>백엔드 개발 >C++ >최적의 품질을 유지하면서 C#의 이미지를 크기를 조정하는 방법은 무엇입니까?

최적의 품질을 유지하면서 C#의 이미지를 크기를 조정하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2025-01-31 01:06:10240검색

How to Resize Images in C# While Maintaining Optimal Quality?
C#

의 고품질 이미지 크기 조정 C#에서 이미지 크기 조정에는 종종

클래스의 , 및 특성을 사용하는 것이 포함됩니다. 그러나 간단한 크기 조정 방식은 이미지 품질을 손상시킬 수 있습니다. 최적의 결과를 위해서는 아래의 방법과 같은보다 정교한 방법을 사용하십시오.

이 방법은 고품질 크기 조정을 위해 몇 가지 주요 기능을 활용합니다.

System.Drawing.Image : Size 스케일링 프로세스 중에 이미지를 미러링하여 이미지 가장자리에서 아티팩트 (고스트)를 제거합니다. Width : Height는 크기를 줄이거 나 프린트 준비 할 때 품질을 유지하는 데 결정적으로 이미지의 DPI (인치당 도트)를 보존합니다. 고품질 그래픽 설정 :

, , 및 public static Bitmap ResizeImage(Image image, int width, int height) { var destRect = new Rectangle(0, 0, width, height); var destImage = new Bitmap(width, height); destImage.SetResolution(image.HorizontalResolution, image.VerticalResolution); using (var graphics = Graphics.FromImage(destImage)) { graphics.CompositingMode = CompositingMode.SourceCopy; graphics.CompositingQuality = CompositingQuality.HighQuality; graphics.InterpolationMode = InterpolationMode.HighQualityBicubic; graphics.SmoothingMode = SmoothingMode.HighQuality; graphics.PixelOffsetMode = PixelOffsetMode.HighQuality; using (var wrapMode = new ImageAttributes()) { wrapMode.SetWrapMode(WrapMode.TileFlipXY); graphics.DrawImage(image, destRect, 0, 0, image.Width, image.Height, GraphicsUnit.Pixel, wrapMode); } } return destImage; }는 모두 우수한 렌더링을 위해 또는

로 설정됩니다.

중요한 고려 사항 :
    이 함수는 본질적으로 종횡비를 관리하지 않습니다. 왜곡을 방지하기 위해 해당 측면을 직접 처리해야합니다. 또한 크기가 조정 된 이미지 (예 : 사용)를 저장하면 품질에도 영향을 줄 수 있습니다. 이미지 저장 형식 및 압축 수준의 모범 사례에 대해서는 외부 리소스를 참조하십시오.

위 내용은 최적의 품질을 유지하면서 C#의 이미지를 크기를 조정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.