如何使 PictureBox 使用最近邻重采样?
我使用 StretchImage 因为盒子可以通过分割器调整大小。 看起来默认是某种平滑的双线性过滤,导致我的图像模糊并具有莫尔图案。
I am using StretchImage because the box is resizable with splitters. It looks like the default is some kind of smooth bilinear filtering, causing my image to be blurry and have moire patterns.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我怀疑您必须通过 Image 类和 DrawImage 函数手动调整大小,并响应 PictureBox 上的调整大小事件。
I suspect you're going to have to do the resizing manually thru the Image class and DrawImage function and respond to the resize events on the PictureBox.
在 .net 中调整图像大小时,System.Drawing.Drawing2D.InterpolationMode 提供以下调整大小方法:
When resizing an image in .net, the System.Drawing.Drawing2D.InterpolationMode offers the following resize methods:
我也需要这个功能。 我创建了一个继承 PictureBox 的类,重写 OnPaint 并添加一个属性以允许设置插值模式:
I needed this functionality also. I made a class that inherits PictureBox, overrides
OnPaint
and adds a property to allow the interpolation mode to be set: