- ASP.NET 画图与图像处理-获取图片宽度和高度
- ASP.NET 画图与图像处理-生成缩略图
- ASP.NET 画图与图像处理-生成高质量缩略图
- ASP.NET 画图与图像处理-加水印
- ASP.NET 画图与图像处理-写字与画线
- ASP.NET 画图与图像处理-画点
- ASP.NET 画图与图像处理-画弧
- ASP.NET 画图与图像处理-GraphicsPath
- ASP.NET 画图与图像处理-关于 Rectangle 和 Path 边框问题
- ASP.NET 画图与图像处理-让 Photoshop 可打开
- ASP.NET 画图与图像处理-压缩图片质量
- ASP.NET 画图与图像处理-如何直接输出到页面
- ASP.NET 画图与图像处理-提供一个很好的验证码程序
- ASP.NET 画图与图像处理-获取照片拍摄日期
它们虽然无边框,但在调用 Draw 和 Fill 方法时需要注意:
先说 Rectangle
假如一个 Rectangle 为 (1, 1, 2, 2),即起始位置为 (1, 1),宽度和高度都为 2。
Rectangle rect = new Rectangle(1, 1, 2, 2);
_graphics.FillRectangle(new SolidBrush(Color.Red), rect);
_graphics.FillRectangle(new SolidBrush(Color.Red), rect);
- 填充之后,效果为:(1, 1)、(1, 2)、(2, 1)、(2, 2) 这四个像素点,即矩形所覆盖的像素点都成了红色。
- 而如果是 DrawRectangle 呢?DrawRectangle 是画矩形的边框,上边框和左边框都是矩形的内边缘,即与 FillRectangle 的上方和左方重合,而下边框和右边框是矩形的外边缘,即比 FillRectangle 的下方和右方往外一个像素。
再说 Path
而 Path 和 Rectangle 恰好相反,如果有一个 Path,由四条线围成一个矩形。
- 那么 DrawPath 就是这四条线所在的位置。
- 而 FillPath 的上方和左方分别和 DrawPath 的上边框和左边框重合,但下方和右方要比 DrawPath 的下边框和右边框往内一个像素。
如果 Path 并不是矩形,而是不规则形状,特别是对于斜线、弧度这些部分,那 FillPath 是怎样呢?并没有拿到这方面的资料,不过据初步来看,似乎是与 DrawPath 有点交错,但不完全重合也不完全分离。


