Наконец-то удалось получить несколько сообщений об ошибках при создании моего собственного шрифта. Это:
- kATSFontTestMessageTextKey sfnt: шрифт содержит данные 'sfnt', но не распознает данные глифа.
- kATSFontTestMessageTextKey hhea: ascent (200) меньше 40,00 их (1000)
- kATSFontTestMessageTextKey hhea: спуск (100) больше или равен нулю
- kATSFontTestMessageTextKey 'name': имя PostScript (foo) имеет недопустимую комбинацию платформы / скрипта (0, 4)
- kATSFontTestMessageTextKey 'name': таблица не имеет имени PostScript с необходимыми сочетаниями платформы / сценария / языка 1/0/0 или 3/1/1033.
- kATSFontTestMessageTextKey hmtx: глиф 1 имеет ширину 90; должно быть ноль
Хотите знать, что нужно сделать для этого на высоком уровне. В основном это name
. hhea
- "незначительные" ошибки, поэтому шрифт может все еще работать. sfnt
Я не уверен, что это из-за того, что имя включено неверно, или потому что мои шрифты - это только кривые, которые не могут закрыть . Фактически, я не думаю, что они закрываются, поскольку я не строил это как контуры, я не думаю. Так интересно, может ли это быть проблемой.
Если я попытаюсь просто добавить запись name
с платформой 1 (mac), сценарием 0, языком 0, валидатор завершит работу, поэтому больше не будет использовать. Я не уверен, почему он не примет комбинацию 0/4 (0 = платформа Unicode).
Если я добавлю 3/1/1033
name
запись, я получу эту ошибку:
'имя': запись имени 1 (тип имени 6, платформа 3, сценарий 1033, язык 1) не может быть преобразована в Unicode.
Хорошо, только что он работает с 1/0/0
, но теперь получите следующие дополнительные ошибки:
- 'имя': перекрываются две записи имени: запись имени 0 (байты 66-69) и запись имени 1 (байты 66-69)
- ... несколько похожих с разными номерами записи, например, следующее:
- 'имя': перекрываются две записи имени: запись имени 4 (байты 66-72) и запись имени 2 (байты 69-72)
Похоже, единственное, что действительно необходимо исправить, это таблица sfnt
, в которой нет хорошего сообщения об ошибке.
![enter image description here](https://i.stack.imgur.com/7Fx2w.png)
У меня там есть таблица CFF2, поэтому не уверен, что это значит.