Jus*_*ant 16 wpf antialiasing cleartype directwrite internet-explorer-9
它是有据可查的(如这里),其IE9将忽略字体平滑(又名抗锯齿)的OS范围的设置.即使在Windows中禁用了字体平滑和ClearType,IE仍会显示抗锯齿字体,有些用户难以阅读,特别是在小字体时.
如何在IE9中禁用所有字体抗锯齿(ClearType或其他)?
更多细节:
我们公司构建了一个使用大量小字体的Web应用程序.随着IE9的发布,我们的一些用户抱怨IE9的默认抗锯齿使我们的小字体模糊或模糊.因此,我们需要帮助已安装IE9并希望关闭抗锯齿功能的用户.
另外,就个人而言,我无法阅读小型的抗锯齿字体,所以我想要一个自己使用的解决方案,即使对于我无法控制的网站也是如此.
在IE8中,我可以取消选中"始终使用ClearType for HTML",然后在操作系统中禁用ClearType,IE8将显示所有字体别名.但在IE9中,缺少此选项.
经过一些关于这个问题的研究,这就是我所学到的:核心问题是IE依靠DirectWrite进行文本渲染,并且不支持任何更新的渲染选项,这些选项可以在没有抗锯齿的情况下绘制文本并尊重用户的OS-广泛的默认选择.
更糟糕的是,如果你在操作系统中禁用ClearType,在某些情况下,IE将回退到DirectWrite的默认非cleartype抗锯齿,它甚至比ClearType更模糊.
经过几天的搜索,我发现了一个MSDN论坛帖子,它在这里指出了一个解决方案:http: //www.softwareninjas.ca/dwrite-dll-wrapper
按照该页面上的说明进行操作,您将从IE9中删除消除锯齿功能(至少是IE的32位版本,这是默认的IE,即使在64位Windows 7上也是如此).到目前为止,我已经在Win7 x64笔记本电脑上进行了测试,它运行良好.
非常感谢Olivier Dagenais建立了这个.以下是他的解决方案如何运作的技术摘要.
这是一个两步的过程.首先,您需要通过注册表项在IE中禁用ClearType.这与以前版本的IE中提供的设置相同,但它已从IE UI中删除,因为它在IE9中停止工作.
[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main]
"UseClearType"="no"
Run Code Online (Sandbox Code Playgroud)
其次,现在ClearType被禁用,Windows将回退到非cleartype抗锯齿解决方案.现在还需要禁用后退防止.引用上面的帖子:
剩下的是字体平滑(也称为子像素渲染),这是在关闭cleartype后仍然看到的"模糊效果".
如果你想知道,有一种方法可以关闭它.
我用来关闭子像素奇迹的方法是为dwrite.dll构建一个简单的包装器,它拦截并转发对真实dwrite.dll的调用,在此过程中禁用字体平滑.
您可以从以下网址下载:http://www.softwareninjas.ca/dwrite-dll-wrapper
您可以在https://softwareninjas.kilnhg.com/Repo/Open-Source/Group/DWrite-dll-Wrapper找到代码
这是一个非常酷的黑客.在Windows和DirectX版本中可能有点脆弱,但是现在要做到这一点,直到微软一起行动来修复IE本身的"无法禁用抗锯齿"问题.
它也适用于使用IE WebBrowser控件(又名MSHTML)的应用程序,因此您可以逐个应用程序控制消除锯齿.它也适用于HTML帮助查看器.
请注意,IE9标准模式下的文本质量并不理想.具体来说,小字体有时会有字母一起运行,而它们之间没有通常的单像素空间.如果在兼容模式下呈现相同的页面(或者您的站点使用非严格的DTD或其他非标准实施的DTD),那么它看起来很好.因此,如果某些网站需要最佳的别名文本呈现,那么还有一个额外的步骤:只需按IE工具栏中的兼容性按钮即可以兼容模式查看网站.
直接回答你的问题:
ClearType字体渲染用于所有IE9文档模式; 子像素定位仅在IE9的默认标准模式下使用.IE9的兼容模式 - Quirks,7和8使用全像素文本指标.
因此,尝试切换您的doctype以使用Quirks模式:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
Run Code Online (Sandbox Code Playgroud)
另一件需要考虑的事情是尝试避免基于点的字体大小.
MSDN来源:
| 归档时间: |
|
| 查看次数: |
24977 次 |
| 最近记录: |