Проблема возникает из-за криво русифицированных шрифтов. Исправление NLS в реестре (на c_1251.nls) при этом неконструктивно.
Исправление русификации шрифта с помощью программы FontForge
-
Запускаем FontForge. Загружаем в него «некорректный» шрифт (пропускаем все запросы). Проверяем: если в списке присутствует русский символ «А» (в прямоугольнике; чёрный на белом) и, при его выделении, под меню показывает текст 1040 (0x410) U+0410 "....." CYRILLIC CAPITAL LETTER A, тогда шрифт и правда русифицирован, просто не хватает указания кодовых страниц (из-за этого он и не работает как надо), их мы добавим в пункте 2.
-
Через меню [Элемент] -> [Информация о шрифте...] -> [OS/2] переходим на вкладку [Кодировки]. В списке [Кодовые страницы MS], зажав Shift, выбираем [1252, Latin-1] и [1251, Кириллица]. Проверяем: строка [Cyrillic & Supplement] должна быть выделена в списке [Диапазоны Unicode], если нет - выделяем, зажав предварительно Shift. Или можно просто отметить [По умолчанию] для этого списка. [ОК].
-
В меню [Файл] -> [Создать шрифты...] задаём новое имя файла (по желанию) и в выпадающем списке выбираем тип шрифта TrueType или OpenType (CFF), что больше нравится. Снимаем галку с [Проверить перед сохранением]. [Создать].
-
Проверяем созданный файл на корректность. Всё. При желании можно поменять отображаемое имя шрифта или другие данные на вкладке [PS Names] окна [Информация о шрифте...] перед сохранением.
В PS CS3 можно решить менее радикально: идем в [Edit] -> [Preferences] -> [Type] и отключаем опцию [Enable Missing Gliph Protection].