다음을 통해 공유


방법: 이미지 자르기 및 배율 조정

업데이트: 2007년 11월

Graphics 클래스에는 몇 가지 DrawImage 메서드가 있으며, 그 중 일부에는 이미지를 자르고 배율을 조정하는 데 사용할 수 있는 원본 및 대상 사각형 매개 변수가 있습니다.

예제

아래 예제에서는 디스크에 있는 Apple.gif 파일을 사용하여 Image 개체를 만듭니다. 이 코드에서는 원래 크기로 전체 사과 이미지를 그린 다음, Graphics 개체의 DrawImage 메서드를 호출하여 원래 사과 이미지보다 큰 대상 사각형에 사과의 일부분을 그립니다.

DrawImage 메서드에서는 세 번째, 네 번째, 다섯 번째 및 여섯 번째 인수에 지정된 원본 사각형을 조사하여 사과의 어느 부분을 그릴지 결정합니다. 이 예제에서는 사과를 원래 너비 및 높이의 75%로 자릅니다.

DrawImage 메서드에서는 두 번째 인수에 지정된 대상 사각형을 조사하여 자른 사과를 그릴 위치 및 배율을 결정합니다. 이 예제에서 대상 사각형은 원래 이미지보다 너비 및 높이가 30% 더 큽니다.

아래 그림에서는 원래 사과 및 일부를 잘라 배율을 조정한 사과를 보여 줍니다.

자르기 및 배율 조정

Dim image As New Bitmap("Apple.gif")

' Draw the image unaltered with its upper-left corner at (0, 0).
e.Graphics.DrawImage(image, 0, 0)

' Make the destination rectangle 30 percent wider and
' 30 percent taller than the original image.
' Put the upper-left corner of the destination
' rectangle at (150, 20).
Dim width As Integer = image.Width
Dim height As Integer = image.Height
Dim destinationRect As New RectangleF( _
    150, _
    20, _
    1.3F * width, _
    1.3F * height)

' Draw a portion of the image. Scale that portion of the image
' so that it fills the destination rectangle.
Dim sourceRect As New RectangleF(0, 0, 0.75F * width, 0.75F * height)
e.Graphics.DrawImage( _
    image, _
    destinationRect, _
    sourceRect, _
    GraphicsUnit.Pixel)

Image image = new Bitmap("Apple.gif");

// Draw the image unaltered with its upper-left corner at (0, 0).
e.Graphics.DrawImage(image, 0, 0);

// Make the destination rectangle 30 percent wider and
// 30 percent taller than the original image.
// Put the upper-left corner of the destination
// rectangle at (150, 20).
int width = image.Width;
int height = image.Height;
RectangleF destinationRect = new RectangleF(
    150,
    20,
    1.3f * width,
    1.3f * height);

// Draw a portion of the image. Scale that portion of the image
// so that it fills the destination rectangle.
RectangleF sourceRect = new RectangleF(0, 0, .75f * width, .75f * height);
e.Graphics.DrawImage(
    image,
    destinationRect,
    sourceRect,
    GraphicsUnit.Pixel);

코드 컴파일

앞의 예제는 Windows Forms에서 사용해야 하며 Paint 이벤트 처리기의 매개 변수인 PaintEventArgs e를 필요로 합니다. Apple.gif를 시스템에서 사용할 수 있는 이미지 파일 이름 및 경로로 바꿔야 합니다.

참고 항목

기타 리소스

이미지, 비트맵 및 메타파일

이미지, 비트맵, 아이콘 및 메타파일 사용