В чем причина такого поведения шрифтов?

Коллеги, кто хорошо понимает устройство шрифтов, может быть подскажите?

Имеются два шрифта: Phonetic Newton (Type 1) и Newton Phonetic (OTF)

В первом символы транскрипции раскиданы странно: в начале кодовой таблицы и ближе к концу (61 тыс. - 62 тыс.) дубли. И еще в середине диапазона.

Во втором - компактно в начале таблицы.

Странность №1.
Допустим, пользуюсь Type 1-версией в MS Word. Вставляю символ через диалог "Вставить символ", выбираю его в таблице. Символ появляется, но код его не тот, что был виден в диалоге, а код дубликата глифа из конца таблицы шрифта! Написали макрос для замены кода символа (макрос обрабатывает весь word-файл). Замена происходит, но если посмотреть код - опять будет из конца таблицы!

Странность №2.
Смотрю оба шрифта в Font Expert. Второй шрифт в режимах "Кодировка Windows" и "Все определенные символы" выглядит одинаково. Ну, за исключением пустышек, которые не определены, а в "Кодировка Windows" в таблице обязательно есть.

А вот в первом шрифте в режиме "Кодировка Windows" появляются глифы на кодах, которые исчезают в режиме "Все определенные символы".

Что за фигня? Такое впечатление, что какие-то коды первого шрифта являются чем-то типа алиасов на другие коды в таблице. Этим объяснялась бы и первая странность и вторая...

Непонимание этой ситуации меня уже порядком раздражает. Я стал изучать Fonts & Encodings (Yannis Haralambous), но пока ответа не нашёл.

Прошу знающих пояснить!
  • Вопрос задан
  • 2623 просмотра
Решения вопроса 1
iiil
@iiil
Инженер и вэб-дизайнер, рисую.
Предположу, что первая область содержит символы набора ASCII, а в конце они дублируются.
Замена кодировок - могли бы привести два кода, один, который Вы выбираете, второй - на который его заменят word? Опять-таки, предположу, что это две разные кодировки, старая и новая.
Вся проблема в том, что раньше в кодировке ASCII первые 128 символов были общими, остальные отличались. И вот на вторые 128 потом появились в Unicode свои коды, и ведет отсчет Unicode как раз таки с 256 символа (0-255 заняты). Соответственно, в некоторых шрифтах символы есть как в диапазоне с 128 по 255, так и дальше, уже в кодировке Unicode. И вот кодировка Unicode является приоритетной, потому система заменяет на них Ваши выбранные символы. Я об этом читал кажется у Кирсанова. Это предположение, без файлов шрифтов сложно сказать, да и я не такой уж специалист.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы