题
我需要从一组 jpg 生成缩略图,这些缩略图需要有一个小的白色边框,以便它们在地图上显示时看起来像是“照片”。获取缩略图本身很容易,但我不知道如何获取边框。
解决方案
这是一个快速技巧:
public Image AppendBorder(Image original, int borderWidth)
{
var borderColor = Color.White;
var newSize = new Size(
original.Width + borderWidth * 2,
original.Height + borderWidth * 2);
var img = new Bitmap(newSize.Width, newSize.Height);
var g = Graphics.FromImage(img);
g.Clear(borderColor);
g.DrawImage(original, new Point(borderWidth, borderWidth));
g.Dispose();
return img;
}
它创造了一个新的 Bitmap
对象的大小为原始大小加上 2 倍边框宽度,然后在中间绘制原始图像,然后返回完成的图像。
你可以用它做很多绘画/绘画 Graphics
上面的对象也是如此。
不隶属于 StackOverflow