某些 Unicode 字体在 Windows 7/Firefox 中不起作用

某些 Unicode 字体在 Windows 7/Firefox 中不起作用

我想要显示埃及象形文字:

答案1

我的浏览器应该自动检测字体中不存在的字形并找到合适的匹配

不幸的是,OP 上的这个假设只适用于 Firefox。Firefox 使用 fontconfig 进行逐字形字体替换;如果包含相关字符,则使用适当的字体。

IE 和 Chrome 相比,IE 略胜一筹,因为它提供了更广泛的基于每个脚本的回退功能,并为字体提供了 UI 设置,尽管这不包括埃及象形文字。Uniscribe / DirectWrite 的字体回退机制(主要用于复杂文本布局的组件)在这篇 MSDN 文章

虽然 Chrome最终支持每个脚本的字体回退2012 年,用户必须安装额外的扩展来调整它们——其中一个扩展是高级字体设置。但是告诉所有使用 Chrome 的网站访问者安装扩展程序并不十分可行。

关于原始问题,可能需要调查字体回退机制的方向,可能是其他一些行为不良的字体覆盖了 Noto 字体,声称支持这些字形,但实际上并不支持。一种繁琐的方法是删除系统中多余的字体,然后逐个重新添加,直到找到罪魁祸首。

答案2

有一个 WIKI 页面专门用于显示特殊字符,包括 IE 和埃及字符的提示: http://en.wikipedia.org/wiki/Help:Special_characters 也许这可能会有所帮助

答案3

我在使用软件时遇到了同样的问题,该软件的窗口中有我所用语言的字符,但却没有显示真正的字符,然后我更改了控制面板中的设置->区域和语言->管理->非 Unicode 语言,并将其设置为我的语言。

答案4

如果没有安装与字符匹配的字体,则无法显示这些字符;Windows 不会自动下载字体!

您可以嵌入使用@font-face网络字体) 在您的网页的 css 中。在 css 中添加类似以下内容来定义 webfont:

@font-face {
    font-family: 'NotoSansEgyptianHieroglyphs';
    src: url('http://myserver/example/NotoSansEgyptianHieroglyphs-Regular.ttf');
}

然后将样式应用于 CSS 中带有象形文字的元素:

.hieroglyphics {font-family: NotoSansEgyptianHieroglyphs;}

相关内容