【问题标题】:Can webfonts be non-utf compatible?webfonts 可以不兼容 utf 吗?
【发布时间】:2014-07-15 20:15:05
【问题描述】:

我不确定还有什么可责备的...但我已经尝试了所有方法,包括使用 squirrel 转换器将原始 tff 重新转换为网络字体。

有问题的字体是这样的:http://www.fonts2u.com/bolnisi.font 它的描述是:Unicode BMP only 不管这意味着什么:)

在演示中,我看到 html 中的文本是以拉丁字符输入的。 当我使用格鲁吉亚语 utf 字母时:ქართული。此字体从不适用!

示例:http://mac.idev.ge:800/breakmedia/ 看标题,只有数字被转换成这个字体。休息是正常的衬线。

CSS:

@font-face {
    font-family: 'bolnisiregular';
    src: url('font/bolnisi-webfont.eot');
    src: url('font/bolnisi-webfont.eot?#iefix') format('embedded-opentype'),
         url('font/bolnisi-webfont.woff') format('woff'),
         url('font/bolnisi-webfont.ttf') format('truetype'),
         url('font/bolnisi-webfont.svg#bolnisiregular') format('svg');
    font-weight: normal;
    font-style: normal;
}

html *
{
   font-family: 'bolnisiregular' !important;
}

这里发生了什么?有什么想法吗?

【问题讨论】:

    标签: css utf-8 fonts webfonts


    【解决方案1】:

    这是一种典型的“hack”字体。正如您在链接到的字体页面上看到的那样,字形不在它们应该属于的字符代码中。 “i”的代码点处的字形是“ი”。这不是“i”的正确字形。 “i”的字形应该看起来像“i”。字形“ი”属于代码点 U+10D8,即格鲁吉亚字母“IN”的代码点。

    在该语言的代码点在 Unicode 标准中被正式批准之前,和/或该语言的软件(尚不)支持 Unicode 之前,已使用/曾经使用过此类字体修改。即,在黑暗时代的某个时候,格鲁吉亚语没有官方编码,但格鲁吉亚人希望在他们的屏幕上看到格鲁吉亚字形。因此,任意 ASCII 码位都被格鲁吉亚字形所覆盖。严格来说,那个字体坏了。

    【讨论】:

    • 很有意义。感谢您的解释 :) 这种字体例如:fonts2u.com/… 正确显示格鲁吉亚字母,但我在字符映射中找不到字母......那么这个字体是如何工作的?
    • 使用charmap顶部的下拉菜单并选择格鲁吉亚语部分。它根本不会一次显示整个charmap,因为它很大。
    • 嘿,你好像对字体很了解,能帮忙吗? stackoverflow.com/questions/24759286/…
    【解决方案2】:

    此特定字体仅包含拉丁字母,您可以在 fonts2u.com 上示例文本下方的 Character map 部分看到。

    【讨论】:

    • 我就是这么想的。有没有办法将其重新映射为 unicode?​​span>
    • AFAIK 那会很复杂。可以使用 JavaScript(或更好的 jQuery),但您需要创建以拉丁字母为键、格鲁吉亚字母为值的字符表,然后使用此表逐字母“翻译”整个文本。跨度>
    • 嘿,你的回答很简短。但我认为另一个提供了更多信息,这正是我需要的!所以+1
    • 没关系。我不是为代表做的:P
    猜你喜欢
    • 2015-12-06
    • 1970-01-01
    • 2020-04-14
    • 2013-07-11
    • 2015-11-25
    • 2012-08-15
    • 1970-01-01
    • 2018-11-26
    • 1970-01-01
    相关资源
    最近更新 更多