用户可以在我的网站上上传照片。我目前正在压缩照片并调整其大小,以确保它们不是很大的文件。但这会创建尺寸各异的照片……我认为该网站有点“丑陋”。
我想确保缩略图是正方形图像,但不要使用填充。缩略图中的照片有些丢失是可以的。我想保持照片的保真度很高,即使这意味着需要裁剪。
最佳答案
我写了一些代码来做这件事。我之所以选择裁剪,是因为在不保留宽高比的情况下调整大小看起来很可怕。我先裁剪然后调整大小以创建缩略图图像:
public Bitmap CreateThumbnail(Bitmap RawImage)
{
int width = RawImage.Width;
int height = RawImage.Height;
Size ThumbnailDimensions = new Size();
ThumbnailDimensions.Width = 100;
ThumbnailDimensions.Height = 100;
Rectangle cropArea = new Rectangle();
if (width > height)
{
cropArea.Width = height;
cropArea.Height = height;
cropArea.X = 0;
cropArea.Y = 0;
}
else if (width < height)
{
cropArea.Width = width;
cropArea.Height = width;
cropArea.X = 0;
cropArea.Y = 0;
}
if(width != height) Bitmap thumbnail = CropImage(RawImage, cropArea);
thumbnail = ResizeImage(thumbnail, ThumbnailDimensions);
return thumbnail;
}
只是从左上角开始裁剪,然后将其调整为我的缩略图尺寸。