【发布时间】:2018-09-18 08:54:58
【问题描述】:
想知道 TrueType 字体中 cmap table 的“字符代码”是什么。微软谈到了Character to Glyph Index Mapping Table,但我不明白字符或字形索引是什么意思。
想知道您是否在字体文件的某处指定了编码,例如Unicode 11.0,然后字符代码等于U+0061 为a 的Unicode 代码点。或者,如果字符代码是“浏览器”字符代码(我猜是十进制代码),例如 97 代表 a。
基本上想知道如何将键盘字符映射到字体字形,以及这意味着什么。我认为您不是很想将 keyboard 代码映射到字体字形,而是像 U+0061 这样的 unicode 代码映射到字体字形,所以如果在 JavaScript (for example) 中,您可以使用 \u03A9如果你的字体支持,它会给你Ω。
试图理解字体文件的结构,即它如何将数学字形映射为矢量/路径,映射到某种字符或代码。
【问题讨论】:
-
这基本上是对您其他问题的改写吗?简短的回答是“阅读 OpenType 规范。它需要一段时间”,稍长但更简单但不太详细的答案是 pomax.github.io/CFF-glyphlet-fonts
-
好的,非常感谢,我将不得不阅读那篇文章,它看起来真的很有帮助。是的,这几乎是相同的问题,只是角度不同。我想你已经回答得差不多了。
-
它不包括 TTF,因为它不那么有趣,所以我添加了一个答案,具体涵盖了 CMAP 步骤之后 TTF 中的工作方式。
标签: unicode fonts character-codes