SlideShare ist ein Scribd-Unternehmen logo
1 von 21
진대연
네이버 스마트폰 카페 개발자 모임 스텝 ‘대연군’
cafe.naver.com/bjphone

“한 바보가 할 수 있는 것은 다른 바보도 할 수가 있는 것”
                     - 실바누스 P.톰슨 -
Windows Mobile 개발환경

•
•

•
•
•
•
•
•

• 관련 정보 링크 : http://cafe.naver.com/bjphone/351599
•

                       불투명


                       반투명




      1        2        3
    깜빡임 제거   투명화 처리   반투명 효과
•




                     •

                         –



                         –




         protected override void OnPaintBackground(PaintEventArgs
    e)
         {

         }
8
•

                     –



                     –
  일반적인 그리기



                     –




  backbuffer

더블버퍼링을 이용한 그리기
Graphics g = Graphics.FromImage(backbuffer);




// 당구공 이미지가 실제 그려지는 목적 Rectagle 의 크기 : 당구대 가로
   길이의 약 5%

                                                // 당구공 이미지가 실제 그려지는 목적 Rectagle 의 크기 :
                                                   당구대 가로 길이의 약 5%
// 당구공 이미지의 목적 Rectagle에 실제이미지를 넣어 넣어 그린후 투명
  값을 넣어준다.


                                                // 당구공 이미지의 목적 Rectagle에 실제이미지를 넣어 넣어 그린후
                                                   투명 값을 넣어준다.




                                                e.Graphics.DrawImage(backbuffer, 0, 0);
•

                        –



                        –



                        –


Graphics.DrawString (String, Font, Brush, RectangleF)
Graphics.DrawString (String, Font, Brush, RectangleF, StringFormat)
Graphics.DrawString (String, Font, Brush, Single, Single)
Graphics.DrawString (String, Font, Brush, Single, Single, StringFormat)
•
    Graphics.DrawString (String, Font, Brush, RectangleF)
    Graphics.DrawString (String, Font, Brush, RectangleF, StringFormat)
    Graphics.DrawString (String, Font, Brush, Single, Single)
    Graphics.DrawString (String, Font, Brush, Single, Single, StringFormat)




    /* 문자열의 투명화 처리 */
    string sExample = " 투명화 처리n예제 프로그램";
    textWidth = (int)(g.MeasureString(sExample, this.Font).Width);
    textHeight = 30;
    g.DrawString(sExample, this.Font, new SolidBrush(Color.Blue),
                  new RectangleF(this.ClientRectangle.Width / 2
                - textWidth / 2, this.ClientRectangle.Height * 0.8f, textWidth, textHeight * 2));
•

                                                        –



                                                        –




Graphics.DrawImage (Image, Rectangle, Single, Single, Single, Single, GraphicsUnit, ImageAttributes)
•



    Graphics.DrawImage (Image, Rectangle, Single, Single, Single, Single, GraphicsUnit, ImageAttributes)

    /* 이미지의 투명화 처리 */
    // ImageAttrubutes 객체 생성
    System.Drawing.Imaging.ImageAttributes attr = new System.Drawing.Imaging.ImageAttributes();

    // 투명화 처리를 원하는 색을 가져와 attr.SetColorKey 에 저장한다.
    // 본 예제에서는 이미지의 (0,0) pixel 값을 투명색으로 설정함.
    attr.SetColorKey(_ballImage.GetPixel(0, 0), _ballImage.GetPixel(0, 0));

    // 당구공 이미지가 실제 그려지는 목적 Rectagle 의 크기 : 당구대 가로 길이의 약 5%
    Rectangle destRect = new Rectangle(ballX, ballY, ballSizeWidth, ballSizeHeight);

    // 당구공 이미지의 목적 Rectagle에 실제이미지를 넣어 넣어 그린후 투명 값을 넣어준다.
    g.DrawImage(_ballImage, destRect, 0, 0, _ballImage.Width, _ballImage.Height, GraphicsUnit.Pixel, attr);
•

                                                –




                                                –




public static void DrawAlpha(Graphics gx, Bitmap image, byte transp, int x, int y)
•

    –
    –
    –
    –
    –


•   public static void DrawAlpha(Bitmap image, byte transp, int x, int y)


    // 반투명 이미지를 당구대 바닥에 그린다.
Code Project Mobile Development Forum



                         MSDN Windows Mobile




              네이버 스마트폰 카페 개발자 포럼




•


•
    –
투명화 처리로 살펴 본 한층 고급화된 모바일 UX

Weitere ähnliche Inhalte

Ähnlich wie 투명화 처리로 살펴 본 한층 고급화된 모바일 UX

이미지 프로세싱 in Python Open Source - PYCON KOREA 2020
이미지 프로세싱 in Python Open Source - PYCON KOREA 2020이미지 프로세싱 in Python Open Source - PYCON KOREA 2020
이미지 프로세싱 in Python Open Source - PYCON KOREA 2020Kenneth Ceyer
 
영상 데이터의 처리와 정보의 추출
영상 데이터의 처리와 정보의 추출영상 데이터의 처리와 정보의 추출
영상 데이터의 처리와 정보의 추출동윤 이
 
이미지프로세싱
이미지프로세싱이미지프로세싱
이미지프로세싱일규 최
 
U-GAT-IT: Unsupervised Generative Attentional Networks with Adaptive Layer-In...
U-GAT-IT: Unsupervised Generative Attentional Networks with Adaptive Layer-In...U-GAT-IT: Unsupervised Generative Attentional Networks with Adaptive Layer-In...
U-GAT-IT: Unsupervised Generative Attentional Networks with Adaptive Layer-In...jungminchung
 
[NDC2016] 신경망은컨텐츠자동생성의꿈을꾸는가
[NDC2016] 신경망은컨텐츠자동생성의꿈을꾸는가[NDC2016] 신경망은컨텐츠자동생성의꿈을꾸는가
[NDC2016] 신경망은컨텐츠자동생성의꿈을꾸는가Hwanhee Kim
 
Anomaly Detection with GANs
Anomaly Detection with GANsAnomaly Detection with GANs
Anomaly Detection with GANs홍배 김
 
[NDC14] 라이브중인 2D게임에 시스템 변경 없이 본 애니메이션 도입하기[던전앤파이터]
[NDC14] 라이브중인 2D게임에 시스템 변경 없이 본 애니메이션 도입하기[던전앤파이터][NDC14] 라이브중인 2D게임에 시스템 변경 없이 본 애니메이션 도입하기[던전앤파이터]
[NDC14] 라이브중인 2D게임에 시스템 변경 없이 본 애니메이션 도입하기[던전앤파이터]SeungWon Lee
 
프레임레이트 향상을 위한 공간분할 및 오브젝트 컬링 기법
프레임레이트 향상을 위한 공간분할 및 오브젝트 컬링 기법프레임레이트 향상을 위한 공간분할 및 오브젝트 컬링 기법
프레임레이트 향상을 위한 공간분할 및 오브젝트 컬링 기법YEONG-CHEON YOU
 
(Paper Review)Few-Shot Adversarial Learning of Realistic Neural Talking Head ...
(Paper Review)Few-Shot Adversarial Learning of Realistic Neural Talking Head ...(Paper Review)Few-Shot Adversarial Learning of Realistic Neural Talking Head ...
(Paper Review)Few-Shot Adversarial Learning of Realistic Neural Talking Head ...MYEONGGYU LEE
 
Let's Go (golang)
Let's Go (golang)Let's Go (golang)
Let's Go (golang)상욱 송
 
Canvas_basic tutorial
Canvas_basic tutorialCanvas_basic tutorial
Canvas_basic tutorialfairesy
 
KCGS11_실시간 피사계 심도 렌더링 개선 기법
KCGS11_실시간 피사계 심도 렌더링 개선 기법KCGS11_실시간 피사계 심도 렌더링 개선 기법
KCGS11_실시간 피사계 심도 렌더링 개선 기법noerror
 
3D Engine (ICON 2007)
3D Engine (ICON 2007)3D Engine (ICON 2007)
3D Engine (ICON 2007)SeongWan Kim
 
안드로이드스터디 7
안드로이드스터디 7안드로이드스터디 7
안드로이드스터디 7jangpd007
 
120513 unity3 d_start_skyseer
120513 unity3 d_start_skyseer120513 unity3 d_start_skyseer
120513 unity3 d_start_skyseerChan-hyun Park
 

Ähnlich wie 투명화 처리로 살펴 본 한층 고급화된 모바일 UX (16)

이미지 프로세싱 in Python Open Source - PYCON KOREA 2020
이미지 프로세싱 in Python Open Source - PYCON KOREA 2020이미지 프로세싱 in Python Open Source - PYCON KOREA 2020
이미지 프로세싱 in Python Open Source - PYCON KOREA 2020
 
영상 데이터의 처리와 정보의 추출
영상 데이터의 처리와 정보의 추출영상 데이터의 처리와 정보의 추출
영상 데이터의 처리와 정보의 추출
 
이미지프로세싱
이미지프로세싱이미지프로세싱
이미지프로세싱
 
U-GAT-IT: Unsupervised Generative Attentional Networks with Adaptive Layer-In...
U-GAT-IT: Unsupervised Generative Attentional Networks with Adaptive Layer-In...U-GAT-IT: Unsupervised Generative Attentional Networks with Adaptive Layer-In...
U-GAT-IT: Unsupervised Generative Attentional Networks with Adaptive Layer-In...
 
[NDC2016] 신경망은컨텐츠자동생성의꿈을꾸는가
[NDC2016] 신경망은컨텐츠자동생성의꿈을꾸는가[NDC2016] 신경망은컨텐츠자동생성의꿈을꾸는가
[NDC2016] 신경망은컨텐츠자동생성의꿈을꾸는가
 
Anomaly Detection with GANs
Anomaly Detection with GANsAnomaly Detection with GANs
Anomaly Detection with GANs
 
[NDC14] 라이브중인 2D게임에 시스템 변경 없이 본 애니메이션 도입하기[던전앤파이터]
[NDC14] 라이브중인 2D게임에 시스템 변경 없이 본 애니메이션 도입하기[던전앤파이터][NDC14] 라이브중인 2D게임에 시스템 변경 없이 본 애니메이션 도입하기[던전앤파이터]
[NDC14] 라이브중인 2D게임에 시스템 변경 없이 본 애니메이션 도입하기[던전앤파이터]
 
프레임레이트 향상을 위한 공간분할 및 오브젝트 컬링 기법
프레임레이트 향상을 위한 공간분할 및 오브젝트 컬링 기법프레임레이트 향상을 위한 공간분할 및 오브젝트 컬링 기법
프레임레이트 향상을 위한 공간분할 및 오브젝트 컬링 기법
 
(Paper Review)Few-Shot Adversarial Learning of Realistic Neural Talking Head ...
(Paper Review)Few-Shot Adversarial Learning of Realistic Neural Talking Head ...(Paper Review)Few-Shot Adversarial Learning of Realistic Neural Talking Head ...
(Paper Review)Few-Shot Adversarial Learning of Realistic Neural Talking Head ...
 
Let's Go (golang)
Let's Go (golang)Let's Go (golang)
Let's Go (golang)
 
Canvas_basic tutorial
Canvas_basic tutorialCanvas_basic tutorial
Canvas_basic tutorial
 
KCGS11_실시간 피사계 심도 렌더링 개선 기법
KCGS11_실시간 피사계 심도 렌더링 개선 기법KCGS11_실시간 피사계 심도 렌더링 개선 기법
KCGS11_실시간 피사계 심도 렌더링 개선 기법
 
[Week4]canvas
[Week4]canvas[Week4]canvas
[Week4]canvas
 
3D Engine (ICON 2007)
3D Engine (ICON 2007)3D Engine (ICON 2007)
3D Engine (ICON 2007)
 
안드로이드스터디 7
안드로이드스터디 7안드로이드스터디 7
안드로이드스터디 7
 
120513 unity3 d_start_skyseer
120513 unity3 d_start_skyseer120513 unity3 d_start_skyseer
120513 unity3 d_start_skyseer
 

Mehr von Dae Yeon Jin

자기관리(진대연)
자기관리(진대연)자기관리(진대연)
자기관리(진대연)Dae Yeon Jin
 
에버노트 노트북,태그 정리법
에버노트 노트북,태그 정리법에버노트 노트북,태그 정리법
에버노트 노트북,태그 정리법Dae Yeon Jin
 
에버노트에 날개를 달자
에버노트에 날개를 달자에버노트에 날개를 달자
에버노트에 날개를 달자Dae Yeon Jin
 
User Conf 2011 진대연
User Conf 2011 진대연User Conf 2011 진대연
User Conf 2011 진대연Dae Yeon Jin
 
대연군 GTD 관리
대연군 GTD 관리대연군 GTD 관리
대연군 GTD 관리Dae Yeon Jin
 
윈도우폰 강의자료
윈도우폰 강의자료윈도우폰 강의자료
윈도우폰 강의자료Dae Yeon Jin
 
갤럭시S 강의자료
갤럭시S 강의자료갤럭시S 강의자료
갤럭시S 강의자료Dae Yeon Jin
 
Windows Phone 7 발표 [Dava]
Windows Phone 7 발표 [Dava]Windows Phone 7 발표 [Dava]
Windows Phone 7 발표 [Dava]Dae Yeon Jin
 

Mehr von Dae Yeon Jin (8)

자기관리(진대연)
자기관리(진대연)자기관리(진대연)
자기관리(진대연)
 
에버노트 노트북,태그 정리법
에버노트 노트북,태그 정리법에버노트 노트북,태그 정리법
에버노트 노트북,태그 정리법
 
에버노트에 날개를 달자
에버노트에 날개를 달자에버노트에 날개를 달자
에버노트에 날개를 달자
 
User Conf 2011 진대연
User Conf 2011 진대연User Conf 2011 진대연
User Conf 2011 진대연
 
대연군 GTD 관리
대연군 GTD 관리대연군 GTD 관리
대연군 GTD 관리
 
윈도우폰 강의자료
윈도우폰 강의자료윈도우폰 강의자료
윈도우폰 강의자료
 
갤럭시S 강의자료
갤럭시S 강의자료갤럭시S 강의자료
갤럭시S 강의자료
 
Windows Phone 7 발표 [Dava]
Windows Phone 7 발표 [Dava]Windows Phone 7 발표 [Dava]
Windows Phone 7 발표 [Dava]
 

투명화 처리로 살펴 본 한층 고급화된 모바일 UX

  • 2. 네이버 스마트폰 카페 개발자 모임 스텝 ‘대연군’ cafe.naver.com/bjphone “한 바보가 할 수 있는 것은 다른 바보도 할 수가 있는 것” - 실바누스 P.톰슨 -
  • 3.
  • 4.
  • 5. Windows Mobile 개발환경 • • • • • • • • • 관련 정보 링크 : http://cafe.naver.com/bjphone/351599
  • 6. 불투명 반투명 1 2 3 깜빡임 제거 투명화 처리 반투명 효과
  • 7.
  • 8. • – – protected override void OnPaintBackground(PaintEventArgs e) { } 8
  • 9. – – 일반적인 그리기 – backbuffer 더블버퍼링을 이용한 그리기
  • 10. Graphics g = Graphics.FromImage(backbuffer); // 당구공 이미지가 실제 그려지는 목적 Rectagle 의 크기 : 당구대 가로 길이의 약 5% // 당구공 이미지가 실제 그려지는 목적 Rectagle 의 크기 : 당구대 가로 길이의 약 5% // 당구공 이미지의 목적 Rectagle에 실제이미지를 넣어 넣어 그린후 투명 값을 넣어준다. // 당구공 이미지의 목적 Rectagle에 실제이미지를 넣어 넣어 그린후 투명 값을 넣어준다. e.Graphics.DrawImage(backbuffer, 0, 0);
  • 11.
  • 12. – – – Graphics.DrawString (String, Font, Brush, RectangleF) Graphics.DrawString (String, Font, Brush, RectangleF, StringFormat) Graphics.DrawString (String, Font, Brush, Single, Single) Graphics.DrawString (String, Font, Brush, Single, Single, StringFormat)
  • 13. Graphics.DrawString (String, Font, Brush, RectangleF) Graphics.DrawString (String, Font, Brush, RectangleF, StringFormat) Graphics.DrawString (String, Font, Brush, Single, Single) Graphics.DrawString (String, Font, Brush, Single, Single, StringFormat) /* 문자열의 투명화 처리 */ string sExample = " 투명화 처리n예제 프로그램"; textWidth = (int)(g.MeasureString(sExample, this.Font).Width); textHeight = 30; g.DrawString(sExample, this.Font, new SolidBrush(Color.Blue), new RectangleF(this.ClientRectangle.Width / 2 - textWidth / 2, this.ClientRectangle.Height * 0.8f, textWidth, textHeight * 2));
  • 14. – – Graphics.DrawImage (Image, Rectangle, Single, Single, Single, Single, GraphicsUnit, ImageAttributes)
  • 15. Graphics.DrawImage (Image, Rectangle, Single, Single, Single, Single, GraphicsUnit, ImageAttributes) /* 이미지의 투명화 처리 */ // ImageAttrubutes 객체 생성 System.Drawing.Imaging.ImageAttributes attr = new System.Drawing.Imaging.ImageAttributes(); // 투명화 처리를 원하는 색을 가져와 attr.SetColorKey 에 저장한다. // 본 예제에서는 이미지의 (0,0) pixel 값을 투명색으로 설정함. attr.SetColorKey(_ballImage.GetPixel(0, 0), _ballImage.GetPixel(0, 0)); // 당구공 이미지가 실제 그려지는 목적 Rectagle 의 크기 : 당구대 가로 길이의 약 5% Rectangle destRect = new Rectangle(ballX, ballY, ballSizeWidth, ballSizeHeight); // 당구공 이미지의 목적 Rectagle에 실제이미지를 넣어 넣어 그린후 투명 값을 넣어준다. g.DrawImage(_ballImage, destRect, 0, 0, _ballImage.Width, _ballImage.Height, GraphicsUnit.Pixel, attr);
  • 16.
  • 17. – – public static void DrawAlpha(Graphics gx, Bitmap image, byte transp, int x, int y)
  • 18. – – – – – • public static void DrawAlpha(Bitmap image, byte transp, int x, int y) // 반투명 이미지를 당구대 바닥에 그린다.
  • 19.
  • 20. Code Project Mobile Development Forum MSDN Windows Mobile 네이버 스마트폰 카페 개발자 포럼 • • –