在IE9中禁用Cleartype(文本抗锯齿)

| IE9忽略了操作系统范围内的字体平滑设置(也称为抗锯齿),这已得到充分证明(例如,在此处)。即使在Windows中禁用了字体平滑和ClearType,IE仍显示抗锯齿的字体,某些用户难以阅读,特别是在小字体时。 如何禁用IE9中的所有字体抗锯齿功能(ClearType或其他方式)? 更多细节: 我们公司构建了一个使用许多小字体的Web应用程序。随着IE9的发布,我们的一些用户抱怨IE9的默认抗锯齿功能使我们的小字体变得模糊或模糊。因此,我们需要帮助已经安装IE9并希望关闭抗锯齿功能的用户。 另外,就我个人而言,我在读取较小的抗锯齿字体时遇到了麻烦,因此我想为自己使用的解决方案,即使是在我无法控制的网站上也是如此。 在IE8中,我可以取消选中“始终对HTML使用ClearType”,然后在操作系统中禁用ClearType,IE8将显示所有字体的别名。但是在IE9中,缺少此选项。 经过对该问题的一些研究之后,这是我所学到的:核心问题是IE依赖DirectWrite进行文本呈现,并且不支持任何会在没有抗锯齿和尊重的情况下绘制文本的较新的呈现选项。用户在操作系统范围内的默认选择。 更糟糕的是,如果在操作系统中禁用ClearType,在某些情况下IE会退回到DirectWrite的默认非cleartype抗锯齿功能,这甚至比ClearType模糊得多。     
已邀请:
经过几天的搜索,我发现了一个MSDN论坛线程,该线程向我指出了此处的解决方案:http://www.softwareninjas.ca/dwrite-dll-wrapper 请按照该页面上的说明进行操作,您将从IE9(即使是64位Windows 7上也至少是32位版本的IE)(默认的IE)中删除了抗锯齿功能。到目前为止,我已经在Win7 x64笔记本电脑上对其进行了测试,并且可以完美地工作。 非常感谢创建此的Olivier Dagenais。这是他的解决方案工作原理的技术摘要。 这是一个两步过程。首先,您需要通过注册表项在IE中禁用ClearType。此设置与以前版本的IE中可用的设置相同,但已从IE UI中删除,因为它已在IE9中停止工作。
[HKEY_CURRENT_USER\\Software\\Microsoft\\Internet Explorer\\Main]
\"UseClearType\"=\"no\"
其次,既然已禁用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发行版之间可能有些脆弱,但是直到Microsoft共同采取行动解决IE本身的“无法禁用抗锯齿”问题之前,这种方法将立即解决。 它也适用于使用IE WebBrowser控件(又名MSHTML)的应用程序,因此您可以逐个应用程序控制抗锯齿。它也适用于HTML帮助查看器。 请注意,IE9标准模式下的文本质量不是理想的。具体来说,小字体有时带有字母,有时字母之间没有通常的一像素间距。如果您在兼容模式下呈现同一页面(或者您的站点使用非严格DTD或其他非标准强制DTD),则看起来不错。因此,如果某些站点想要最佳的别名文本呈现,则还有另外一个步骤:只需按IE \工具栏中的“兼容性”按钮以兼容模式查看站点。     
要直接回答您的问题:   在所有IE9文档模式下都使用ClearType字体渲染。亚像素   定位仅在IE9的   默认标准模式。 IE9   兼容模式-Quirks,7和   8-使用全像素文本指标。 因此,请尝试将您的文档类型切换为使用Quirks模式:
 <!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">
要考虑的另一件事是尝试避免基于点的字体大小。 有关IE9中的字体,模糊性和渲染的重要信息 IE 9在某些情况下不使用亚像素抗锯齿 MSDN来源: IE9中的子像素字体-blogs.msdn.com/b/ie/archive/2010/11/03/sub-pixel-fonts-in-ie9.aspx IE9的模糊字体文本-www.hanselman.com/blog/TheUltimateGuideOfFiveThingsForNewIE9UsersWhoFearChange.aspx 定义文件兼容性 文件模式     
这里的信息解决了两个问题: 1.摆脱IE9中的cleartype和字体平滑 2.在安装或自动安装IE10时清除cleartype和字体平滑 我做了一个注册黑客,以关闭IE9中的cleartype: [HKEY_CURRENT_USER \\ Software \\ Microsoft \\ Internet Explorer \\ Main] \“ UseClearType \” = \“否\” 并使用了一些免费软件来摆脱IE9中的字体平滑处理: https://softwareninjas.kilnhg.com/Repo/Open-Source/Group/DWrite-dll-Wrapper 然后IE10自动安装了它自己,模糊类型又回来了。我尝试卸载IE 10,这不是通过添加/删除程序界面,而是通过已安装的更新界面-删除IE10更新。从表面上看,我回到了IE9,但是模糊的类型仍然存在,尽管事实是“否”仍然是注册表中cleartype的答案,并且两个.dll文件仍位于我的IE程序文件夹中。 因此,我决定卸载IE9并重新安装它。这还涉及通过已安装的更新界面并删除IE9更新。 我重新启动,预计必须重新安装该程序,但是我的IE图标仍然存在。当我单击它时,IE9以漂亮,清晰的字体打开。     

要回复问题请先登录注册