달나라 노트

C# : DrawImage (이미지 표시하기) 본문

C#/C#

C# : DrawImage (이미지 표시하기)

CosmosProject 2022. 5. 30. 19:23
728x90
반응형

 

 

 

DrawImage method는 이미지를 가져와서 그려줍니다.

 

 

Syntax

DrawImage(Image, x, y, width, height)

 

- Image

System.Drawing.Image 객체입니다.

 

 

- x, y

이미지가 그려질 x, y 좌표입니다.

이미지를 감싸는 사각형을 만들고 그 사각형의 왼쪽 위 꼭지점이 기준점이 됩니다.

 

 

- width, height

이미지를 감싸는 사각형의 가로 길이, 세로 길이를 의미합니다.

 

 

 

 

 

 

background_night.png

예시에서는 위 이미지를 사용합니다.

 

 

 

 

using System;
using System.Windows.Forms;
using System.Drawing;

class Sample2
{
    public static void Main()
    {
        Form fm = new Form();
        fm.ClientSize = new Size(300, 250);

        string dir_img_bg_night = "C:\\\\Users\\\\Public\\\\mysource\\\\background_night.png";


        void draw_img(object sender, PaintEventArgs e)
        {
            Graphics g = e.Graphics;

            g.DrawImage(Image.FromFile(dir_img_bg_night), 10, 20, 100, 80);
        }
        fm.Paint +=  new PaintEventHandler(draw_img);



        Application.Run(fm);
    }
}

 

위 코드를 실행하면 다음과 같은 화면이 나옵니다.

 

 

이미지가 그려졌으며 이미지를 감싸는 사각형의 왼쪽 위 좌표는 x=10, y=20 입니다.

 

그리고 이미지의 가로 길이는 100이며, 세로 길이는 80입니다.

 

 

 

 

 

 

 

 

 

 

 

 

 

using System;
using System.Windows.Forms;
using System.Drawing;

class Sample2
{
    public static void Main()
    {
        Form fm = new Form();
        fm.ClientSize = new Size(300, 250);

        string dir_img_bg_night = "C:\\\\Users\\\\Public\\\\mysource\\\\ball_gray.png";


        void draw_img(object sender, PaintEventArgs e)
        {
            Graphics g = e.Graphics;

            g.DrawImage(Image.FromFile(dir_img_bg_night), 10, 20, 100, 80);
        }
        fm.Paint +=  new PaintEventHandler(draw_img);



        Application.Run(fm);
    }
}

 

이번엔 이미지를 원으로 바꿔보았습니다.

 

 

원으로 바꿔도 동일합니다.

원을 감싸는 가상의 사각형을 만들고 이 사각형의 왼쪽 위 지점이 기준 좌표가 됩니다.

 

따라서 위 빨간색처럼 이미지를 타이트하게 감싸는 가상의 사각형이 있으며 이 사각형의 왼쪽 위 꼭지점의 좌표가 x=10, y=20이 됩니다.

 

그리고 이미지의 가로 길이는 100이며, 세로 길이는 80입니다.

 

 

 

 

 

 

728x90
반응형
Comments