windows – StretchBlt HALFTONE == BILINEAR用于所有缩放?
任何人都可以澄清工作站Win32 API的GDI
StretchBlt功能是否执行双线性插值以缩放24/32位彩色图像的较大和较小图像?如果没有,是否有一个GDI(而不是GDI)功能呢?
SetStretchBltMode fn的设置为HALFTONE,记录如下:
我已经看到references (see follow-up to first answer)在缩小图像时执行双线性插值,但是在放大时没有明确的答案. 我注意到Windows Mobile CE SDK does support a BILINEAR flag – 与HALFTONE注释完全相反(仅适用于扩展). 请注意,对于这个问题的范围,我没有兴趣追求GDI(有许多插值选项),OpenGL,DirectX等作为替代品,所以请不要打扰关于这些其他API或备用的后续行动图像库. 我真正希望找到的是一些明确的MS / MSDN或其他高质量文档,它们清楚地记录了Win32(桌面)GDI行为的这种行为. 同时,我会尝试一些比较GDI和Direct2D的实验(它确实有一个明确的标志来控制它)并发布我的发现. 谢谢! 解决方法
HALFTONE模式基于改变定义的正方形上的转换阈值,在图像上执行非常块状的半色调抖动.我从未见过这种情况会被认为是最佳选择.
COLORONCOLOR是彩色图像的最佳模式,但正如您所见,它并没有给出很好的效果. GDI不支持双线性模式(除了您发现的Windows Mobile CE之外).缩小图像时,双线性的天真实现并不是很好,因为它只是试图在两个相邻的输入像素之间进行插值,而不是试图从更大的区域进行绘制. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 如何在Burn(WiX)中引用重启Pending属性
- windows-xp – %sessionname%返回错误的会话名称
- windows-phone-7 – System.OutOfMemoryException同时从隔离
- windows10计划任务启动bat执行jar打包的jar文件
- Windows Phone 7 – Windows Phone的单元测试状态
- windows-8 – 摆脱Metro界面
- windows-server-2003 – “喷射包装WINS服务器”究竟是什么
- windows-server-2003 – 在Windows上从命令行确定可用内存
- windows – 使用Cygwin进行FFMPEG构建错误cmp:command not
- _XP64__在OSX 10.6上为C应用程序的默认构建定义在哪里?