이미지 품질에 영향을주지 않고 이미지 크기를 조정하려면 어떻게해야합니까?
답변
으로 RCAR는 말한다, 당신은 어떤 품질을 잃지 않고, 최고의 당신은 C #에서 할 수 없습니다 :
Bitmap newImage = new Bitmap(newWidth, newHeight);
using (Graphics gr = Graphics.FromImage(newImage))
{
gr.SmoothingMode = SmoothingMode.HighQuality;
gr.InterpolationMode = InterpolationMode.HighQualityBicubic;
gr.PixelOffsetMode = PixelOffsetMode.HighQuality;
gr.DrawImage(srcImage, new Rectangle(0, 0, newWidth, newHeight));
}
답변
벡터 그래픽을 사용하지 않는 한 이미지 품질을 잃지 않고 이미지 크기를 조정할 수있는 방법이 없습니다.
답변
private static Image resizeImage(Image imgToResize, Size size)
{
int sourceWidth = imgToResize.Width;
int sourceHeight = imgToResize.Height;
float nPercent = 0;
float nPercentW = 0;
float nPercentH = 0;
nPercentW = ((float)size.Width / (float)sourceWidth);
nPercentH = ((float)size.Height / (float)sourceHeight);
if (nPercentH < nPercentW)
nPercent = nPercentH;
else
nPercent = nPercentW;
int destWidth = (int)(sourceWidth * nPercent);
int destHeight = (int)(sourceHeight * nPercent);
Bitmap b = new Bitmap(destWidth, destHeight);
Graphics g = Graphics.FromImage((Image)b);
g.InterpolationMode = InterpolationMode.HighQualityBicubic;
g.DrawImage(imgToResize, 0, 0, destWidth, destHeight);
g.Dispose();
return (Image)b;
}
에서 여기
답변
당신이하려는 것은 당신의 이미지를 “크기 조정 / 리샘플링”하는 것입니다. 다음은 지침을 제공하고 유틸리티 클래스를 제공하는 좋은 사이트입니다.
http://www.codeproject.com/KB/GDI-plus/imgresizoutperfgdiplus.aspx
답변
크기를 조정하지 않으면 래스터 그래픽으로이 작업을 수행 할 수 없습니다.
좋은 필터링과 다듬기로 할 수있는 일은 눈에 띄는 품질 을 잃지 않고 크기를 조정하는 것 입니다.
이미지의 DPI 메타 데이터를 변경할 수도 있습니다 (일부 포함한다고 가정). 정확히 동일한 픽셀 수를 유지하지만 이미지 편집자가 ‘실제’측정에서 인식하는 방식을 변경할 수 있습니다.
그리고 모든 기반을 다루기 위해 실제 이미지 크기가 아닌 이미지의 파일 크기 만 의미했다면 이미지 데이터의 무손실 인코딩을 살펴볼 것을 제안합니다. 이에 대한 제 제안은 이미지를 .png 파일로 다시 저장하는 것입니다 (그림판을 Windows의 이미지에 대한 무료 트랜스 코더로 사용하는 경향이 있습니다. 그림판에서 이미지로드, 새 형식으로 저장)
답변
픽셀 수를 줄이기 때문에 품질 손실없이 이미지 크기를 조정할 수 없습니다.
브라우저는 이미지 크기를 잘 조정하지 않기 때문에 클라이언트 측 크기를 줄이지 마십시오.
할 수있는 일은 렌더링하기 전에 또는 사용자가 업로드 할 때 프로그래밍 방식으로 크기를 변경하는 것입니다.
다음은 C #에서이 작업을 수행하는 한 가지 방법을 설명하는 문서입니다.
http://www.codeproject.com/KB/GDI-plus/imageresize.aspx
답변
이 오픈 소스 ASP.NET 모듈 의 이미지 크기 조정 품질이 마음에 드는지 확인하십시오 . 라이브 데모가 있으므로 직접 조작 할 수 있습니다. Photoshop 출력과 구별하기 어려운 결과를 산출합니다. 또한 비슷한 파일 크기를 가지고 있습니다. MS는 JPEG 인코더에서 좋은 일을했습니다.