다음을 통해 공유


자동 크기 조정을 방지하여 성능 향상

이미지의 왼쪽 위 모서리만 DrawImage 메서드에 전달하는 경우 Windows GDI+는 이미지의 크기를 조정하여 성능을 저하시킬 수 있습니다.

다음 DrawImage 메서드 호출은 (50, 30)의 왼쪽 위 모서리를 지정하지만 대상 사각형은 지정하지 않습니다.

graphics.DrawImage(&image, 50, 30);  // upper-left corner at (50, 30)

필수 인수 수 측면에서 DrawImage 메서드의 가장 쉬운 버전이지만 반드시 가장 효율적인 것은 아닙니다. 현재 디스플레이 디바이스의 인치당 점 수가 이미지를 만든 디바이스의 인치당 점 수와 다른 경우 GDI+는 이미지를 스케일링하여 현재 디스플레이 디바이스의 실제 크기가 생성된 디바이스의 물리적 크기에 최대한 가깝게 조정합니다.

이러한 크기 조정을 방지하려면 대상 사각형의 너비와 높이를 DrawImage 메서드에 전달합니다. 다음 예제에서는 동일한 이미지를 두 번 그립니다. 첫 번째 경우 대상 사각형의 너비와 높이가 지정되지 않고 이미지는 자동으로 스케일링됩니다. 두 번째 경우 대상 사각형의 너비와 높이(픽셀 단위로 측정)는 원래 이미지의 너비 및 높이와 동일하게 지정됩니다.

Image image(L"Texture.jpg");
graphics.DrawImage(&image, 10, 10);
graphics.DrawImage(&image, 120, 10, image.GetWidth(), image.GetHeight());

다음 그림에서는 두 번 렌더링된 이미지를 보여 줍니다.

서로 다른 배율의 두 가지 이미지 버전이 포함된 창의 스크린샷