我的代码中有一个 System.Drawing.Bitmap
。
宽度是固定的,高度是变化的。
我想要做的是在位图周围添加一个白色边框,大约 20 像素,到所有 4 个边缘。
这将如何运作?
最佳答案
您可以在位图后面绘制一个矩形。矩形的宽度为 (Bitmap.Width + BorderWidth * 2),位置为 (Bitmap.Position - new Point(BorderWidth, BorderWidth))。或者至少我会这样做。
编辑: 下面是一些解释如何实现它的实际源代码(如果你有一个专门的方法来绘制图像):
private void DrawBitmapWithBorder(Bitmap bmp, Point pos, Graphics g) {
const int borderSize = 20;
using (Brush border = new SolidBrush(Color.White /* Change it to whichever color you want. */)) {
g.FillRectangle(border, pos.X - borderSize, pos.Y - borderSize,
bmp.Width + borderSize, bmp.Height + borderSize);
}
g.DrawImage(bmp, pos);
}
关于c# - 在位图周围绘制边框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13357121/