Отправляет email-рассылки с помощью сервиса Sendsay

Screen reader JAWS for Windows Russian

[JFWRus] Озвучивание и кодировки.

Привет, JAWS!

Повторяю своё письмо почти трёхлетней давности.

Многие из нас сталкивались с проблемой, что вместо текста мы
слышим Абракадабру.
Но, все же у большинства пользователей такая проблема не
проявляется.

У меня эта проблема была в Outlook.
А также бывает проблема, что в буфере обмена оказывается
абракадабра.
Причем бывают разные ньюансы мы слышим все нормально, но
отображается набор всяких значков.
Такое наблюдалось в Windows XP окне виртуального просмотра
JAWS, вызываемого по [Insert+F1].
Но, опять это не на всех машинах.
но тому у кого проблема одинаково, что у соседа всё в порядке,
ему надо решать свою проблему.

В общем случае это проблема кирилицы её кодовой страницы и
шрифтов.
Я встречал два способа решения этой проблемы:
1.Подмена кодовых страниц в реестре
Об этом будет подробнее в конце письма.
Пользовался этим способом, помогало.
Но возникает вопрос, насколько это корректный способ, и не
имеет ли он побочных эффектов?
2. Подмена шрифтов
Подробнее также ниже.
Этим способом не пользовался.
По описанию этот способ более корректен.
Его использует Microsoft.
Кто-нибудь пользовался этим способом?
Работает ли он?
Может нам совместно разобраться с проблемой и найти оптимальный
способ её решения.
Определить в каких версиях JAWS, Windows это проявляется.

Вот выдержки из статьи про решение этой проблемы.
Подмена шрифтов

Подмена шрифта является официальным способом борьбы с
неотображением шрифтов: именно этим способом компания Майкрософт
добивается корректного отображения системных шрифтов во всех
версиях операционной системы Windows.Однако реализация этой
подмены различна на разных семействах операционок:Так на
системах 9x (95/98/Me) подмена шрифтов осуществлена через
win.ini, раздел FontSubstitutes, а на NT-системах (NT/2000/XP)
раздел FontSubstitutes вынесен из win.ini в реестр, поэтому там
подмена осуществляется через реестр.Выясняется, какой шрифт не
отображается. Это можно сделать различными путями, от
визуального определения, естественно легче на оригинальном
английском, нежели на абракадабре, и сравнивая, например, со
шрифтами в Блокноте, или с помощью такой разносторонней утилиты
как Kleptomania.
Выясняется каким набором символов абракадабрит, т.е. за кого
система считает переведенный, и неверно отображаемый, текст. Это
можно сделать в каком-нибудь редакторе шрифтов, но я использую
Microsoft Word. Есть в нем такая функция Вставка > Символ... В
этом диалоге можно просмотреть все символы в любом шрифте (левый
выпадающий список) и найти характерные символы, которые
наблюдаются в абракадабре. В правом выпадающем списке
отображаются Наборы символов, в которые тот или иной символ
входит (коды и кодировки см. в таблице ниже).После чего
производится подмена:
Для Win 9x в win.ini в разделе FontSubstitutes прописывается
строка вида:
название шрифта,X=название шрифта,Yнапример,
Arial,0=Arial,204 (подмена английского шрифта русским)
Для Win NT/XP в реестре, в разделе
HKLM\SOFTWARE\Microsoft\Windows
NT\CurrentVersion\FontSubstitutes прописывается новый строковый
параметр:
Параметр: название шрифта,XЗначение: название
шрифта,Yнапример, параметр: Arial,0 и значение: Arial,204где
X - код шрифта к которому обращается программагде Y - код
шрифта на подмену (204 - кириллица)в подавляющем большинстве
случаев X=0 т.е. программа считает текст английским, по
умолчанию, в результате чего русский текст отображается
символами Латиницы 1.Но случается, что авторы умудряются
прописать в программе свой (!) национальный шрифт - в результате
русский текст будет отображаться не Латиницей 1, а национальными
символами автора программы: греческими, арабскими и т.д. В этом
случае потребуется подмена этого национального
шрифта:например, Arial,178=Arial,204 (подмена арабского шрифта
русским)
Частным случаем данного способа, является замена какого-нибудь
редкого шрифта, не имеющего русских символов, другим шрифтом.
например, Helvetica,0=Arial,204Минусы:Предлагать офисной
секретарше, что-то там прописать у себя в win.ini или реестре,
по меньшей мере, не гуманно, а единственная программка,
выполняющая эту задачу для шрифта Arial, которая мне попадалась
- это SetFont <archive/setfont.zip>.

Таблица кодов и кодировок шрифтов
Вид кодировки (набор символов)
-Код
-Кодировка

центральноевропейский (латиница 2)-238-1250
кириллица-204-1251
западноевропейский (латиница 1)-000 (0)-1252
греческий-161-1253
турецкий (латиница 5)-162-1254
иврит-177-1255
арабский-178-1256
прибалтийский-186-1257
вьетнамский-163-1258
...-...-...

Подмена кодовых страниц в реестре

Подмена кодовых страниц в реестре работает только на старшем
семействе операционок: NT/2000/XP
В системном реестре в разделе
HKLM\System\CurrentControlSet\Control\Nls\Codepage содержится
список кодировок и соответствующих им файлов, содержащих кодовые
страницы. Выглядит это так:
Параметр
-Значение (NT/XP)

1250-c_1250.nls
1251-c_1251.nls
1252-c_1252.nls
1253-c_1253.nls
1254-c_1254.nls
1255-c_1255.nls
...-...
Файлы, содержащие кодовые страницы, расположены в папке
Windows\System, и в семействах Windows 9x и NT/XP эти файлы
называются по-разному.
в Windows 9x - cp_xxxx.nls
в Windows XP- c_xxxx.nlsгде xxxx - кодировка
Обычно требуется изменить значение параметра 1252
(западноевропейский Windows) на название файла, содержащего
русскую кодовую страницу (1251 - кириллица Windows), как это
показано ниже.
1252-c_1251.nls
В отдельных случаях могут потребоваться аналогичные изменения
и для других кодировок.Однако предлагать офисным секретаршам
ковыряться в реестре - негоже, поэтому требуется создать
соответствующий файл реестра, который, будучи запущен
пользователем, изменит значение в его реестре.Плюс: этот
способ не зависит от конкретных шрифтов, и решает проблему раз и
навсегда.Минус: не работает на Windows 95/98/Me.

Ответить   Sun, 30 Nov 2008 11:52:01 +0200 (#794416)