调整 Chrome 图像缩放抗锯齿功能以匹配 Internet Explorer 8?

调整 Chrome 图像缩放抗锯齿功能以匹配 Internet Explorer 8?

我很惊讶地发现 Internet Explorer 8 的图像缩放抗锯齿效果似乎比 Chrome 和 Firefox 好得多。下面的屏幕截图是 3 月 17 日 Chrome 和 Explorer 的 google.com 主页并排显示。请注意,Chrome 版本在图像左侧有明显的阶梯状,顶部有光栅化效果:

Chrome 和 Explorer 并排显示——3 月 17 日的 google.com 主页

我的问题是:

是否可以调整 Chrome(和/或 Firefox)的图像缩放抗锯齿功能以匹配 Internet Explorer?

Explorer 的 64 位版本和 32 位版本之间没有区别。Chrome 和 Firefox 之间也没有区别。(在 64 位 Windows 7 计算机上使用所有最新版本。)

一个附带问题(也是我真正感兴趣的)是,What benefits, if any, does Nvidia Optimus provide?但我的测试还不够先进,无法提出这个问题。但早期结果似乎是负面的。(编辑:有人善意地建议,这个问题是无关,应该删除。但我认为它提供了这个原本模糊的问题的动机。)

答案1

看看源文件对于 Chromium 的图像调整大小和过滤,用于放大图像的过滤器似乎半径为 3Lanczos 滤波器。(参见函数ResizeMethodToAlgorithmMethod,我猜使用默认选项是因为注释似乎更适合缩小比例)。卷积内核在EvalLanczos文件最顶部的函数中定义,并且编译后没有任何修改规定。

除非我错误地阅读了代码(请参阅 的构造函数ResizeFilter),否则过滤器(和缩放)一次只在一个方向上应用一维。屏幕截图似乎表明 IE 过滤是二维的,并且按半径而不是最大水平/垂直距离加权。(不过,这可能是错误的线索。)

我猜你可以以某种方式确定 IE 执行哪种过滤并重新实现它,要么只是替换 Lanczos 过滤器,要么(更花哨)更新其余源代码以调用你的过滤器。如果你无法解决一次一维的问题,后者将是必要的。不过,我不建议这样做,除非你对浏览器如何放大图像有特别强烈的感觉。

附言:Opera 中的缩放比例似乎也与您的 Chrome 屏幕截图相匹配。

相关内容