我注意到IE9以非常低的质量呈现尺寸缩小的图像:如果我在200x150 IMG标签中显示800x600 jpg图像,则IE9中的结果非常令人失望。
在IE8和Chrome中,同一页面显示完美。 IE7也没关系,只要我使用CSS样式-ms-interpolation-mode: bicubic;
)。 Firefox显示与IE9相同的令人沮丧的结果,但这似乎是一个已知错误,请参阅https://bugzilla.mozilla.org/show_bug.cgi?id=486918
我已经搜索了Stack Overflow和其他论坛,但没有发现有关IE9渲染与IE8的任何投诉。
有人知道这是IE9中的一个错误。有解决方法吗?
我无法提交图片,因为我是Stack Overflow的新用户。 但您可以轻松地重现该问题:
在Paint.Net中创建一个带有画笔宽度为1或2的椭圆的800x600.jpg。 以200px x 150px IMG标签显示此图像 比较IE9与Chrome和IE8(使用IEtester)
答案 0 :(得分:4)
默认的图像调整大小算法不是很好。如您所知,IE7增加了使用以下方法更改算法的功能:
img {
-ms-interpolation-mode: bicubic;
}
这在IE9 according to the docs page中被删除,但它们没有提供任何关于使用什么的信息。如果您可以设法不在浏览器中调整图像大小,那么您将获得最佳结果。
根据您的使用情况,您可以使用具有较新浏览器的画布来获得更好的结果。 Resizing an image in an HTML5 canvas中接受的答案看起来很有希望:)
答案 1 :(得分:2)
我已经在IE和图像大小调整中看到了很多。老实说,最好通过图像编辑器或自动方式将单独的小版本制作成确切的大小。