Graphic 画图时像素有偏差的问题

EsMo 2009-06-22 09:50:57
Graphic g=e.Graphics;
g.InterpolationMode = InterpolationMode.NearestNeighbor;

用了这个属性后 按临近插值来绘图 但绘制后第一列(左起)和第一行(上起)的像素画的会比其他位置的像素细
也就是说 虽然同是一个像素 但视觉上并不是一样宽度

不知道大家有没有遇到这种情况
...全文
106 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
narutogun2 2011-07-24
  • 打赏
  • 举报
回复
学习一下
EsMo 2009-06-22
  • 打赏
  • 举报
回复
g.PixelOffsetMode = PixelOffsetMode.Half;
EsMo 2009-06-22
  • 打赏
  • 举报
回复
绘制的是两条直线
一条就是一个像素的宽度 但绘制出来以后粗细明显不同
zgke 2009-06-22
  • 打赏
  • 举报
回复
代码是没问题的...你你绘制对角线 如果用插数来做拉伸..很难做到对齐的.
EsMo 2009-06-22
  • 打赏
  • 举报
回复
楼上能给段绘制代码嘛?

Graphics g = e.Graphics;

g.Clear(this.BackColor);
g.InterpolationMode = InterpolationMode.NearestNeighbor;
g.DrawImage(currImage, 0, 0, this.width * zoomFactor, this.height * zoomFactor);

另帮我看下代码有什么问题
zoomFactor是缩放因子
谢谢
zgke 2009-06-22
  • 打赏
  • 举报
回复
......斜线...如果是直线应该不会的.

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧