生成带有白色边框的缩略图

时间:2008-09-16 16:13:31

标签: c# vb.net border thumbnails

我需要从一组jpg中生成缩略图,这些jpg需要有一个小的白色边框,以便在地图上显示时它们看起来像是“照片”。自己获取缩略图很容易,但我无法弄清楚如何获得边框。

1 个答案:

答案 0 :(得分:6)

这是一个快速黑客:

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对象进行大量绘图/绘画。