Render.ru

Давайте до конца разберемся с шрифтами...

Allan_Stark

Активный участник
Рейтинг
7
#1
В принципе в полиграфии еще с 1997 года, но все таки хочу уже до конца систематизировать свои знания по шрифтам на платформе Windows.

Про ТТ & PS шрифты, растровые системные .fon и т.д. просьба не рассказывать - все в курсе, даже есть несколько своих, авторских...

Меня интересует сам механизм управления и поддержки шрифтов в винде. Например известно, что по деволту они хранятся в папке fonts в системной директории, что в HKLM хранится ветка, где прописаны ссылки на файлы шрифтов, а также их названия, зарегистрированные в системе. Что поддержка PS шрифтов встроена в системы 2000 винды и выше (ранее требовалась ATM от адобы). Что в принципе можно использовать и АТМ, он ставит свой спец. драйвер и опосля кстати с помощью него намного удобнее ими управлять (добавлять/удалять, сортировать на группы, строить никому не нужные ММ и т.д). Сторонние программы-менеджеры типа Bitstreeam fontNavigator в этом деле кстати немного глючные.

Но вот буквально вчера переставлял свой домашний компьютер и вместо Arial Cyr упорно ставился Arial, хотя ставил все с тех же компактов... Вручную правка реестра ни к чему не привела. Больше информации (окромя в заголовке самого шрифта) о регистрации шрифтов в системе, насколько мне известно, нет.
Причем например PageMaker отображает название данного шрифта правильно, остальные (фотошоп, корел, кварк, индезинг и много-много других) - нет. Только Arial & Arial Narrow.
Я понимаю, что этот шрифт системный, никогда им не верстаю, однако активно работаю с ним в векторной графике :-(

Также мне до сих пор не совсем понятны глюки графич. редакторов от Адобы с кириллизированными шрифтами, а также то, что ворд в любом шрифте видит по дефолту намного больше символов (в некоторых случаях лечится, например в кореле можно открыть доп. панель и там это тоже есть).

В общем вопросы следующие:
1. Как вернуть обратно Arial Cyr и аналогичные "заморочки"
2. Где достать доступную нормальную информацию по менеджменту шрифтов в винде и устройстве ее шрифтовой подсистемы (где и какие настройки/файлы/ключи реестра за что отвечают)
 

Shlyapa

Почётный пользователь
Рейтинг
15
#2
1. Реестр оставь в покое.

2. Валить шрифты в Windows\Fonts не надо. Пользуйся менеджерами шрифтов, например, Extensis Suitecase.

3. Шрифты, выпущенные до 1998 года не соответсвуют действующим спецификациям. Шрифты, выпущенные позже, нуждаются в проверке. Это касается любых шрифтов, любого производства и способа приобретения.

4. В Win2000/XP ATM не ставит никакого «спецдрайвера». Движок ATM изначально итегрирован в эти ОСи. ATM лишь предоставляет интерфейс, чуть более удобный стандартного виндозного.

5. Забудь про всякие Arial Cyr, Tur и т.п. Так имена юникодных шрифтов с несколькими кодовыми таблицами внутри отображает неюникодный софт, вроде PM-а. «фотошоп, корел, кварк, индезинг и много-много других» — либо сами по себе теперь юникодные, либо, видимо, используют соотвтсующие функции Винды.

6. Ключевые слова для поиска: «правильные шрифты», «неправильные шрифты». Это к вопросу «до сих пор не совсем понятны глюки графич. редакторов от Адобы с кириллизированными шрифт» — ответы на ключевые вопросы были найдены, дай бог памяти, году, эдак, в 2000-2001-м, и с тех пор растиражированы по Сети несчётное количество раз.
Но бабушки всё падают и падают.

7. Как уже было сказано, оставь реестр в покое. Вообще, систему в покое оставь. Подавляющее большинство проблем, связанных со шрифтами, обусловлено качеством шрифтов. Потому лечить надо шрифты, а не ковырять систему.

Начни с простого: http://www.gorod-kha.fromru.com/transtype.html

http://forum.rudtp.ru/forumdisplay.php?f=33
 
#3
Cyr'ы это кодировки, а для Юникода это не нужно - имея данные о языке ввода программа находит символ напрямую, без всяких смещений на корень квадратный деленный на пи пополам (в смысле цифры кодировок это выраженное в small endian число записанное в big endian без конвертации).

Кроме того, в зависимости от LocalID (то есть, локализации ОС) софт может показывать название шрифта на местном языке. Вы это много раз видели, типа Times New Roman Полужирный, или там Жирный, или Наклонный, или что там еще пишут на Bold, Italic.

В файле шрифта для взад-совместимости и для совместимости между ОСями несколько полей с названиями которые могут быть использованы одни - одним софтом, другие - другим. Например откуда берется PostScript Name? А все Адобские прогры используют именно это поле. А виндозные, как правило - Family Name. А еще по спецификации Open Type есть поля. В общем, дурдом а не психбольница, потому что чарсет при этом не меняется - как был Symbol так и остается.

Большинству программ чарсет до фени, но Адоба в это толерантное семейство не входит - из-за чего регулярно возникают глюки при попытке сменить гарнитуру набранному тексту в ФШ, например.

Так что с названиями вам придется просто или чинить все названия которые вам не нравятся, или смириться с тем что в разных программах одни и те же шрифты называются по-разному.
 
#4
Я выше сбился немного: про чарсет это насчет конвертации было - при конвертации ttfconv.exe не трогает чарсет, который, как правило для русефекализованных шрифтов стоит как Symbol. Типа там картинки, а не буквы изображены.

Речь идет о ttf'ах, разумеется. Тайпуаны, несмотря на то, что с помощью одной dll'ки от Адобы поддерживаются в системе для приложений их понимающих, самой осью не понимаются никак - GDI их не перечисляет в упор.

Поэтому для избежания геморроя я давно сконвертил все тайпуаны в ттф-ы. :)
 

Shlyapa

Почётный пользователь
Рейтинг
15
#5
Большинству программ чарсет до фени, но Адоба в это толерантное семейство не входит - из-за чего регулярно возникают глюки при попытке сменить гарнитуру набранному тексту в ФШ, например.
Можешь называть это глюками.
Но это глюки. Это нормальное поведение программ (кстати, не только адобовских) при работе со шрифтами разных категорий — т.н. правильными и т.н. неправильными.

Вот у меня таких «глюков» не наблюдается. Потому, что все шрифты — правильные (моими трудами).
 

Shlyapa

Почётный пользователь
Рейтинг
15
#6
Послушать thomas-а и сделать наоборот!!!

1. ttfconv.exe — утилита, загоняющая шрифтовые болячки вглубь, на поверности демонструю временное облегчение. Но в один прекрасный момент оно вылезет боком.
Никогда не пользоваться этой утилитой!

2. Любыми доступными способами избавиться от TTF, заменив их на Type1 или CFF-OTF.
 
#7
Да мне фиолетовы чьи-то проблемы со шрифтами вообще-то. Я изложил свою методику. А чтобы обойти кошер и треф ФШ написал себе свой собственный менегер фонтов который интерактивно взаимодействует с Корелом, ФШ и Люстрой через их объектные библиотеки, и с его помощью мне поменять гарнитуру любому текстовому объекту в ФШ - два пальца на клаву положить.

Потому что в ФШ через скриптинг и automation доступно гораздо больше опций текстового объекта чем через интерфейс апликухи.

Да, там же реализованы такие функции как Break Text Apart - по строкам, и Combine Text - комбинирует залинкованные текстовые слои в один блок сохраняя форматирование каждой строки. А также отображается список всех использованных гарнитур в активном документе ФШ.

Так что, как видите, у меня дело не кончается починкой шрифтов. Которые я чиню, разумеется, перманентно по мере возникновения проблем с тем или иным. И все они - ttf.
 
#8
Кстати, насчет кошеров Адобы. Если у кого-то есть арсанальские шрифты, которые начинаются "a_*", то вы могли заметить что они в списке идут после всех шрифтов начинающихся на "А". Хотя вполне логично с них начинается список шрифтов в других программах. Ведь там после "а" идет символ с меньшим кодом чем у любой буквы: "_". Но не такие идеологи сидят в Адобе чтобы нормальную логику допустить к жизни: сортировка списка у них - бинарная, а не текстовая. То есть, учитываются большие и маленькие буквы! Поэтому шрифты с "а_*" оказываются после шрифтов с "А". Чюдесно, не правда ли?
 

Shlyapa

Почётный пользователь
Рейтинг
15
#9
Шрифты, о которых ты говоришь, относятся к числу самых кривых, какие только можно найти. К их числу относятся и шрифты с именами, начинающимися на «AG_».

Это те шрифты, избавляться от которых нужно в первую очередь.

Избавляться надо путём, во-первых, приведения их в соответствие с ASCFS, во-вторых, переименования (удаления из имени этого самого «a_», «AG_» и т.п.), в-третьих, конвертирования в Type1 или CFF-OTF.

Обо всём этом говорено-переговорено тысячу раз, в том числе и на этом форуме.

То есть, учитываются большие и маленькие буквы!
Нифига!

У меня, например, в списке шрифтов в адобовском софте можно увидеть:

Small Fonts
sMicraMM
sTaurusMM
Stencil Std

Строго по алфавиту, регистр игнорируется.
 

Shlyapa

Почётный пользователь
Рейтинг
15
#11
А чтобы обойти кошер и треф ФШ написал себе свой собственный менегер фонтов
О, да! Мы лёгких путей не ищем. Вместо того, чтобы устранить причину — кривизну шрифтов, мы будем совершать изощрённые обходные манёвры.

Соболезнования.
 
Сверху