【问题标题】:What range of unicode characters should be kept in a @font-face web font for a US based website with a US audience?对于拥有美国受众的美国网站,@font-face 网络字体中应保留哪些 unicode 字符范围?
【发布时间】:2015-02-28 22:29:06
【问题描述】:

作为优化 Web 开发项目的一部分,我们需要去除不必要的字符,这些字符永远不会用于减小字体文件的大小。我在 Google 上搜索过,没有发现关于哪些字符是必需的以及哪些可以安全删除的主题。

我发现了以下可能感兴趣的范围:

0020 — 007F     Basic Latin
00A0 — 00FF     Latin-1 Supplement
0100 — 017F     Latin Extended-A
0180 — 024F     Latin Extended-B
0250 — 02AF     IPA Extensions
02B0 — 02FF     Spacing Modifier Letters
0300 — 036F     Combining Diacritical Marks
27C0 — 27EF     Miscellaneous Mathematical Symbols-A

似乎最激进的做法是只保留“Basic Latin”,0020 - 007F,它提供大小写字母、数字和一些基本符号,如 $、+、(、)、等等

Latin-1 Supplement 包含一些额外的好处,例如商标和版权符号和分数。

Latin Extended-A 和 -B 包含带有重音符号的字母,由于我们的副本是英文的,我不确定是否需要这些。

如果我们只使用 (0020 — 007F) 和 (00A0 — 00FF) 范围,我们是否会遇到缺少字符的问题,是否应该某些用户决定用西班牙语发表评论(例如)?或者浏览器会回退到不包含网络字体的字符的默认字体?

网络字体的重点是使正文和标题的主体看起来很漂亮,基本的拉丁文集应该涵盖这些,但我不知道是否存在隐藏的“陷阱”,只需剥离“基本拉丁语”范围,例如重音字符显示为菱形问号而不是回退到系统字体等。

@font-face 网页中应保留的 unicode 字符范围 具有美国受众的美国网站的字体?是否有任何最佳做法或指南可以从字体中删除不必要的字符以供网络使用?

【问题讨论】:

  • 好吧,什么是“我们的观众”?如果您的意思是“仅英语”,那么一定要去掉标准美国英语中未使用的任何字符。但请注意,é 之类的内容可能应该保留,否则当您的网站显示“Resume”而不是“Resumé”时,一些语法纳粹会撕毁您一个新的内容
  • @MarcB:有多少美国人能正确拼写“Résumé”?
  • 显然不是这个加拿大人:p
  • 这是一个很好的观点。看起来é00e9,仍然在Latin-1 Supplement 范围内。
  • 这是 a) 主要基于意见,b) 离题,因为它是关于字符的使用,这是您在解决编程和站点管理问题之前应该决定的,c) 太模糊, d) 太宽泛(太多不同的问题)。

标签: unicode fonts


【解决方案1】:

我建议将子集设置为支持美国/西欧的常见“代码页”定义之一。大多数代码页定义早于 Unicode,并且通常具有各种区域支持所需的零碎部分,而不包括整个 Unicode 块。建议:

*这与 Unicode 范围 0020-007F Basic Latin + 00A0-00FF Latin-1 Supplement 相同

这些内容远远超出美国英语的严格要求,尽管如上所述,一些重音字符通常出现在英语文本中(é、ñ 以及其他标点符号和符号)。这些集合包括这些字符,因此对于美国观众的绝大多数文本,您应该处于良好状态。另请注意,在大多数字体中,这些字符通常是“复合字符”,这意味着它们使用对组件的引用(例如,'é' 是从对 'e 的引用构建的>' 和 ''');因此,它们通常不需要那么大的尺寸来存储它们,因此保留它们通常不会导致很大的尺寸损失。

如果您可能遇到欧洲金融文本,我建议您使用包含欧元货币符号的 Windows 1252 或 ISO/IEC 8859-15。

【讨论】:

【解决方案2】:

我不知道是否存在隐藏的“陷阱”,只剩下“基本拉丁语”范围,例如重音字符显示为菱形问号,而不是回退到系统字体

您使用的字体中不存在的任何字符都将回退到浏览器可以找到的任何默认字体。当与您的自定义字体中的其他字符交错时,这可能会很难看,但现代操作系统为上述块中的常用字符提供不错的字体覆盖,因此通常它仍然是可读的。

因此,您应该根据您是否认为它们会被广泛使用以使它们以丑陋的字体呈现是否会破坏交易来包含字符。对于它的价值,我以前用于类似目的的一个非常小的集合是¡£°±²³¿ÉËÑéëñ‘’“”–—•€™,但您的站点的确切要求可能会有所不同。 (例如,如果你选择了纽约风格的分音符,你肯定会想要äëïöü。)

(默认后备字体的具体工作方式因浏览器而异,并且在旧版本的 IE 和 IE Mobile 中是出了名的麻烦。但基本的重音拉丁字母非常安全。)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-16
    • 2020-08-14
    • 2020-10-05
    • 1970-01-01
    相关资源
    最近更新 更多