我的系统是Windows XP,装上了微软雅黑并打开ClearType。前些日子更新了IE7之后,很快我就发现,有很多页面(如百度空间)上的雅黑中文显示不正常,发虚,很模糊,而英文却又全是锯齿,总之没法看。
拜了Google大神,都说是IE7默认打开了ClearType导致中文发虚,可我这里的问题明明是ClearType被关了才会这样。小白太多,把Google都淹了,于是只好靠自己。在百度空间上随便找一个页面保存下来,一点一点找,总算是确定了问题所在:“FILTER: none”和“ZOOM: 1”。
有了关键字才好Google。IEBlog上有一篇《Notes on the interaction of ClearType with DXTransforms in IE7》,说是启用了filter就会强制关闭ClearType。《IE 透明度失效和 zoom:1 有關?》还提及,会出问题的还并不仅仅是ZOOM。
问题找到了,但在IE7内部似乎没办法解决。不过还是有一个曲线救国的法子,那就是用GDI++。GDI++是一个日本人开发的字体渲染工具,借助他可以把Linux下的FreeType2搬到Windows里边用。既然渲染引擎都被换掉,ClearType关不关也就无所谓了。
在GDI++日文WIKI上找到并下载gdi0850.zip和gdi0869.7z,解到同一个目录,然后用这样的命令启动IE:"gdi++.exe" "C:\Program Files\Internet Explorer\iexplore.exe"
下图中左边的窗口是ClearType被强制关闭的效果,右边是使用GDI++后的效果:
GDI++早已停止开发,但因为其是开源软件,所以有很多修改版,有点乱。有兴趣的话就去拜Google大神吧,这东西会很是需要一番折腾。
用了一段时间IE7,感觉也没有找到值得升级的理由。IE7不比IE6快,增加的功能我也不需要,问题还比IE6多。至于说标准,时至今日IE6还有20%以上市场占有率,有人敢无视?未来会有IE6被淘汰的一天,但显然不是现在。
没有评论 :
发表评论