MyOpera.net
Информация об Opera
Поддержка, сервис
Мастерская
Подписка на новости

e-mail:

My Counters


Rambler's Top100






  

  
     




Перекодировка КОІ-8 заменой файла GDI.EXE

Автор: Артем Неганов
aneganov@au.ru

Оригинальная английская версия находится здесь .

Дело в том, что родная кодировка для русского языка в ОС Windows 9x — именно та самая, злополучная win-1251. ”Родная” же кодировка для Сети (и если уж на то пошло, то и для Unix систем) это KOI-8r.

Мы не будем здесь и сейчас вдаваться в исторические подробности и пытаться установить какому же ”светочу” в Micro$oft пришла в голову сия ”гениальная” мысль создать win-1251, в то время как KOI-based кодировки уже существовали и широко использовались. Это просто факт и с этим приходится мириться.

Internet Explorer и Netscape Navigator имеют встроенные, доплнительные по отношению к Windows механизмы преобразования кодировок. Кстати, исходят эти браузеры из того, что изначально системной является кодировка Win-1251.

Всё очень подробно об этой проблеме, о самой кодировке KOI-8r, её месте в нашей жизни, и о том, как KOI-рузировать всё что ”компилируется” и ”запускается” вы можете узнать на правильном сайте Андрея Чернова KOI8-R References (Russian Net Character Set).

Opera не имеет таких механизмов, справедливо полагая, что операционная система должна учитывать региональные, национальные и языковые особенности. Таким образом, проблема сводится к обеспечению поддержки кодировки KOI-8 на уровне Windows 9x.
Но как это сделать?

Наверное многие помнят, что в стандартном диалоговом окне выбора шрифта, начиная с Win95 есть выпадающий список, который в английской версии Windows назвается "Script". Может для некоторых это будет откровением, но именно здесь и задается кодировка.

То, что в списке названо Cyrillic, есть не что иное, как win-1251. Возникает закономерный вопрос: как добавить в список KOI-8r. Оказывается эти скрипты-кодировки наитупейшим образом намертво зашиты в exe-шнике GDI.EXE. Что делать?

Как говориться: клин клином вышибают — нужно ломать и корёжить GDI.EXE. Благо самим это делать не придется: умные люди уже постарались.

Шаг 1. Взять нужный уже отпатченый GDI.EXE (размер файлов около 300 Кб).

zip file Windows Me (Russian Edition) ver. 4.90.0.3000
zip file Windows Me (Standard) ver. 4.90.0.3000
zip file Win98 SE American or PanEuropean ver. 4.10.2222
zip file Win98 SE Russian ver. 4.10.2222
zip file Win98 Standard (American) or PanEuro ver. 4.10.1998
zip file Win98 Russian ver. 4.10.1998
zip file Win95 Standard (ваш оригинальный gdi.exe должен быть размером 312,208 байт)
zip file Win95 Russian (он также работает с OSR2, ваш оригинальный gdi.exe должен быть 312,496 байт)
zip file Win95 PanEuro (ваш оригинальный gdi.exe должен быть 312,464 байт)
zip file Win95 German (ваш оригинальный gdi.exe должен быть 312,336 байт)

Скачать его, потом извлечь во временный каталог. Если верии вашего gdi.exe, нет в этом перечне, то вам нужно обратиться сюда .

Шаг 2. Перегрузить Win95/98/Me в режиме ”command prompt only” (чистый MS-DOS), сделать копию оригинального файла \Windows\System\gdi.exe и переместить новый gdi.exe с временного каталога в \Windows\System\ (вы не сможете перезаписать gdi.exe находясь в Win95/98/Me — система просто не даст вам этого сделать).
Внимание!Внимание: для WinMe вы должны использовать загрузочный диск для запуска ”command line”!

Шаг 3. Перегрузить систему в режиме Win95/98/Me

Шаг 4. Откройте \Windows\win.ini, найдите там [FontSubstitutes] секцию (или добавте ее, если она не присутствует).

Проверьте все CE суффиксы, чтобы выглядели примерно так:

Arial CE,238=Arial,238
Arial CE,0=Arial,238
Courier New CE,238=Courier New,238
Courier New CE,0=Courier New,238
Times New Roman CE,238=Times New Roman,238
Times New Roman CE,0=Times New Roman,238
Arial Black CE,238=Arial Black,238
Arial Black CE,0=Arial Black,238
Impact CE,238=Impact,238
Impact CE,0=Impact,238
Verdana CE,238=Verdana,238
Verdana CE,0=Verdana,238
Lucida Sans Unicode CE,238=Lucida Sans Unicode,238
Lucida Sans Unicode CE,0=Lucida Sans Unicode,238
Haettenschweiler CE,238=Haettenschweiler,238
Haettenschweiler CE,0=Haettenschweiler,238

Естественно, что шрифты могут не совпадать с моими.

Именно суффикс СЕ позволяет получить доступ к KOI8-R шрифтам, например для старых (Win3.*) программ в поле выбора кодировки шрифта.

Шаг 5. Сохраните файлы и перезагрузите компьютер.

Шаг 6. Сейчас в любой программе в окне выбора шрифта вы можете найти, установить кодировку (начертание) KOI8-R.

Шаг 7. Не помешает установить и KOI8-R драйвер клавиатуры — найти его можна здесь .

Конец статьи  
Вверх Вверх
Статьи раздела:
 
© 2000-2001. Николай Ковальчук webmaster@myopera.net. All rights reserved.