跨平台 PNG-in-OTF 字体是否可以高效地实现?

Cri*_*sov 5 png cross-platform opentype chunks emoji

Opentype 字体格式的最新版本(截至 2016 年末为 1.8)标准化了两个不同的表来嵌入 PNG 位图数据: Google\xe2\x80\x99s CBDT(连同CBLC)和 Apple\xe2\x80\x99s sbixSVG\xc2\xa0此外,Mozilla\xe2\x80\x99s表中的 SVG还可以嵌入或引用 PNG。

\n\n

是否可以嵌入一次 PNG 块并在至少两个表中使用它们来制作不大于必要大小的跨平台表情符号字体文件?

\n\n

附带问题:PNG 块可以重复用于多个字形,例如索引调色板吗?

\n\n

PS:我知道 Apple\xe2\x80\x99s 操作系统会使用 PS 名称的字体中的表情符号覆盖表情符号AppleColorEmoji

\n

Roe*_*elN 5

您不能跨表共享图像,例如在表sbix中的表中使用PNG图像cbdt。但如果您使用完全相同的图像文件,它们可能会在压缩的 WOFF 中进行“重复数据删除”。

奇怪的是 CBDT/CBLC 规范规定glyf不应存在表格,而其他格式则需要它。因此,您不能将 或 表格放在cbdt字体sbixsvg。但是您可以将后两者结合起来以获得对 Windows 和 OSX 的相对良好的支持。