Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
让CSS3@font-face字体渲染在Windows上与ClearType配合使用_Windows_Css_Font Face_Cleartype - Fatal编程技术网

让CSS3@font-face字体渲染在Windows上与ClearType配合使用

让CSS3@font-face字体渲染在Windows上与ClearType配合使用,windows,css,font-face,cleartype,Windows,Css,Font Face,Cleartype,首先是一些背景资料 似乎使用CSS3@font-face规则可以在任何浏览器、任何版本的Windows(XP及更高版本)上以意外和不希望的方式与ClearType font renderingv交互 当我遇到它时,我第一次将它作为一个文档记录下来。进一步的研究似乎得出了相互矛盾的信息;启用或禁用ClearType可能有助于或损害@font-face字体在Windows的任何web浏览器中的呈现方式。ClearType是帮助还是伤害似乎完全取决于所使用的字体,以及它们内置了什么样的暗示 例如,当C

首先是一些背景资料

似乎使用CSS3@font-face规则可以在任何浏览器、任何版本的Windows(XP及更高版本)上以意外和不希望的方式与ClearType font renderingv交互

当我遇到它时,我第一次将它作为一个文档记录下来。进一步的研究似乎得出了相互矛盾的信息;启用或禁用ClearType可能有助于或损害@font-face字体在Windows的任何web浏览器中的呈现方式。ClearType是帮助还是伤害似乎完全取决于所使用的字体,以及它们内置了什么样的暗示

例如,当ClearType被禁用时,a似乎指向字体呈现问题。但是,开发了一个用于在启用ClearType时改进字体呈现的插件,但该插件仅在Internet Explorer中工作。有趣的是,当启用ClearType时,插件的演示页面上使用的字体的渲染效果确实很差,但当禁用ClearType时,两个演示页面的渲染效果相同/正确

鉴于所有这些背景信息和之前的研究,我的问题是:

无论Windows ClearType设置如何,确保在所有平台上为现代浏览器提供体面的字体渲染的最佳方式/折衷方案是什么?

我的第一个想法是使用默认包含@font-face字体的样式表。JavaScript可以检测到用户的操作系统,如果检测到Windows,则可以通过编程方式修改样式表类,以使用不包含@font-face字体的字体族,从而使用系统本机备用字体。后来我意识到还有其他人也想到了。不过,这是一个老套且不雅观的解决方案。理想情况下,我希望我的网页字体在任何平台上都可用,而不依赖于sIFR或Cufon之类的东西


有人有什么建议或更好的想法吗?

看看这篇文章,内容大致相同:

IE7&8字体平滑:

关于它的评论也很多。我最近一直在寻找类似的支持,但没有多少乐趣。我不得不在一个项目中使用Cufon,因为客户需要一种非常特殊的字体。有时候,sIFR和Cufon是唯一的解决方案,但老实说,我会远离sIFR

希望这能有所帮助。

这里有一个类似的问题:我得到的答案为我解决了同样的问题


fontsquirrel字体生成器优化字体并添加提示/渲染信息,帮助windows字体渲染引擎更好地渲染字体。它还生成更小的文件,下载速度更快。

这是一个大问题,也是自2012年7月以来谷歌Chrome的一个官方bug。2013年8月,在大多数情况下,这似乎是固定的。然而,仍然有一些字体看起来前卫和像素化的例子

解决方案: 给元素一个合适的文本笔划:

// try around, find the setting that fits your font-size
webkit-text-stroke: 0.6px; 

// alternative RGBa syntax, allows finer settings with alpha-transparency
-webkit-text-stroke: 1px rgba(0, 0, 0, 0.1);
更多信息: 我已经写了一篇关于这个主题的大型博客文章,包括许多屏幕截图和4种不同的解决方案来解决这个问题:看看这里:


我发现ClearType让我所有的自定义字体看起来都像垃圾,不管是什么浏览器(甚至是非IE浏览器)。我和BoltClock有同样的问题。我在原来的帖子中链接到了另一个allcreatives.net页面。虽然有一些黑客攻击IE的行为,但我很好奇Windows中其他浏览器的解决方案。我也患有同样的疾病。还没有找到治愈方法……:)我已经写了一篇文章