2016-12-15 4 views
1

Самая последняя версия Opentype font format (1.8 по состоянию на конец 2016 года) стандартизирует две разные таблицы для вставки данных растрового изображения в формате PNG:(CBLC) и Apple sbix. Кроме того, SVG в Mozilla SVG  table также могут вставлять или ссылаться на PNG.Возможны ли кросс-платформенные шрифты PNG-in-OTF?

Возможно ли внедрить фрагменты PNG один раз и использовать их, по крайней мере, в двух таблицах, чтобы сделать кросс-платформенные файлы шрифтов emoji, которые не больше, чем необходимо?

Боковой вопрос: можно ли использовать PNG-фрагменты для нескольких глифов, например. индексированные цветовые палитры?

PS: Я знаю, что операционные системы Apple переопределяют emojis с теми из шрифта, который имеет имя PS AppleColorEmoji.

+0

«.. стандартизирует две разные таблицы» заставил меня улыбнуться. (Загадочно, но все же.) – usr2564301

ответ

3

Вы не можете обмениваться изображениями между таблицами, например. используйте PNG-изображения в таблице sbix в таблице cbdt. Но если вы используете точные файлы изображений, они могут быть «дедуплированы» в сжатом WOFF.

Странно, что спецификация CBDT/CBLC говорит, что таблица glyf не должна присутствовать, в то время как другие форматы требуют ее. Поэтому вы не можете поставить cbdt рядом с таблицей sbix или svg шрифтом. Но вы можете комбинировать последние два, чтобы получить относительно хорошую поддержку в Windows и OSX.

+0

Я могу подтвердить, что вы можете поместить обе таблицы sbix и svg в один шрифт :) Кстати, может быть, WOFF2 будет лучше, чем WOFF в этом случае? –

Смежные вопросы