Как кодируется кернинг встроенных шрифтов Adobe Type 1 в файлах PDF?

Справочник по Adobe PDF говорит о массиве /Widths и потоке /FontFile, но программы шрифтов Adobe Type 1 (файлы .pfb или .pfa) не включают метрики шрифта; они включены в файлы метрик шрифтов (файлы .afm или .pfm), но не встроены в файл PDF.

PDF может просто кодировать метрики ширины символов или также может кодировать пару кернинга? Как?


person MRuizEscribano    schedule 19.08.2013    source источник
comment
Кернинг в PDF-файлах выполняется с помощью явных смещений в потоках содержимого страницы.   -  person mkl    schedule 19.08.2013


Ответы (1)


Если вы изучите раздел 9.4.4 спецификации PDF ISO 32000-1 (см. ниже), вы увидите, что никакая специальная информация о кернинге (например, извлеченная из программы шрифта) не включается в расчет смещения глифа.

Однако вы также увидите, что существует значение Tj, которое обозначает число в массиве TJ, если таковое имеется, которое указывает корректировку положения. Это значение используется реализовать кернинг.

Например. эта фраза «обозначает число в массиве TJ, если таковое имеется, которое указывает корректировку положения» из самой спецификации задается как:

[( de)-5.5(no)-5.5(te)-5.5(s a nu)-5.5(m)-5.7(b).5(e)-5.5(r).3( in a )]TJ
...

Например, кернинг применяется в обозначает между «e» и «n», «o» и «t», а также «e» и «s».

Раздел из спецификации:

Раздел 9.4.4, упомянутый выше

person mkl    schedule 19.08.2013
comment
Значит, это единственный способ, и он будет отображаться одинаково во всех программах для просмотра PDF? Я должен гарантировать, что ширина строки текста будет одинаковой для разных средств просмотра, и любое программное обеспечение попытается получить информацию о кернинге из другого источника (например, таблицы кернинга из установленной программы шрифтов в хост-системе). - person MRuizEscribano; 19.08.2013
comment
Таким образом, это единственный способ - так как это из спецификации, да, именно так отображается содержимое страницы. будет отображаться одинаково во всех средствах просмотра PDF — только в тех, которые реализуют стандарт PDF без ошибок в этом отношении; это должно означать, что каждый, кроме одного, никогда не знает. любое программное обеспечение попытается получить информацию о кернинге из другого источника. Есть один случай, который следует учитывать: если PDF-файл содержит элементы формы без предварительно созданных потоков внешнего вида, разные средства просмотра могут различаться в том, что они создают в качестве внешнего вида. Поля формы не являются частью обычного содержимого страницы. - person mkl; 19.08.2013