Руководство по русификации StarOffice 5.1a
© 2000 Леонид Кантер
© 2000 Black Cat Linux Team
Коммерческое распространение в печатном и
электронном
виде без письменного разрешения автора запрещено.
Требования
к системе
Подготовка
X Window
Установка
растровых шрифтов
Установка
шрифтов TrueType
Подключение
шрифтов Type1
Перезапуск
фонт-сервера
Установка
StarOffice
Подключение
шрифтов Type1 для печати
Запуск
StarOffice с драйвером клавиатуры cp1251
Печать
из StarOffice
Как
это происходит?
Проблемы
при работе со StarOffice
Заключение
Ниже будет рассказано о русификации пакета StarOffice 5.1a в
кодировке
Microsoft-CP1251. Почему именно CP1251? Потому что это, во-первых,
обеспечивает
возможность обмениваться документами с Microsoft Office, во-вторых, эта
кодировка содержит буквы из украинского, белорусского и южнославянских
алфавитов, которые отсутствуют в KOI8-R.
Требования к системе
Для русификации StarOffice описанным ниже способом необходим дистрибутив
Linux, включающий glibc-2.1 и Xfree86 с поддержкой CP1251 - Mandrake
7.0RE
или Black
Cat 6.2.
Кроме этого, необходимы пакеты растровых (pcf) и масштабируемых
(Type1, .pfa или .pfb) шрифтов в кодировке CP1251. Эти пакеты являются
составной частью Black Cat Linux 6.2. Кроме этого, желательно иметь
основные
шрифты TrueType из Windows 9.x - Times New Roman, Arial и Courier New.
Их использование необязательно, но установка шрифтов TrueType
значительно
повысит качество изображения на экране. Желательно также использовать в
качестве окружения оболочку KDE, так как StarOffice включает средства
интеграции
с KDE. StarOffice - достаточно ресурсоемкая программа, поэтому для
комфортной
работы с ним рекомендуется процессор не хуже Pentium MMX и 64Mb RAM.
Подготовка X Window
Установка растровых шрифтов
Для элементов интерфейса (меню, формы поиска и др.) StarOffice
использует
шрифы в кодировке iso8859-1. Поэтому нам необходимо установить шрифты в
кодировке CP1251, которые имеют алиасы (псевдонимы) iso8859-1, и удалить
стандартные шрифты XFree-75dpi. Такой
пакет входит в Black Cat 6.2, автор
шрифтов - Дмитрий Болховитянов. Для этого нужно выполнить следующие
команды:
rpm -Uvh
XFree86-MICROSOFT-CP1251-75dpi-fonts-6.2-1bc.noarch.rpm
rpm -e
Xfree86-75dpi-fonts
Установка шрифтов TrueType
Для установки шрифтов TrueType необходимо в каталоге
/usr/share/fonts/default/TrueType
необходимо создать файл fonts.scale следующего вида:
12
timesi.ttf
-monotype-Times
New Roman-medium-i-normal--0-0-0-0-p-0-microsoft-cp1251
timesbi.ttf
-monotype-Times
New Roman-bold-i-normal-0-0-0-0-p-0-microsoft-cp1251
timesbd.ttf
-monotype-Times
New Roman-bold-r-normal--0-0-0-0-p-0-microsoft-cp1251
times.ttf
-monotype-Times
New Roman-medium-r-normal--0-0-0-0-p-0-microsoft-cp1251
couri.ttf
-monotype-Courier
New-medium-i-normal--0-0-0-0-m-0-microsoft-cp1251
courbi.ttf
-monotype-Courier
New-bold-i-normal--0-0-0-0-m-0-microsoft-cp1251
courbd.ttf
-monotype-Courier
New-bold-r-normal--0-0-0-0-m-0-microsoft-cp1251
cour.ttf
-monotype-Courier
New-medium-r-normal--0-0-0-0-m-0-microsoft-cp1251
ariali.ttf
-monotype-Arial-medium-i-normal--0-0-0-0-p-0-microsoft-cp1251
arialbi.ttf
-monotype-Arial-bold-i-normal--0-0-0-0-p-0-microsoft-cp1251
arialbd.ttf
-monotype-Arial-bold-r-normal--0-0-0-0-p-0-microsoft-cp1251
arial.ttf
-monotype-Arial-medium-r-normal--0-0-0-0-p-0-microsoft-cp1251
После этого сюда же необходимо скопировать все перечисленные в
левом
столбике файлы шрифтов, которые можно найти в инсталляции Windows
(каталог
\windows\fonts) либо на страничке Microsoft
Typography (для извлечения файлов из самораспаковывающихся архивов
необходима программа WinZip для Windows). Теперь можно выполнить в этом
каталоге команду mkfontdir, в результате ее выполнения создается файл
fonts.dir,
полностью аналогичный файлу fonts.scale. Каталог шрифтов TrueType готов
к работе.
Подключение шрифтов Type1
Если шрифты TrueType недоступны, для отображения на экране можно
использовать
те же самые шрифты Type1, которые будут использоваться для печати (см.
ниже). Но качество отображения символов на экране при этом будет намного
хуже, так как, во-первых, растеризатор Type1 в X намного хуже, чем
растеризатор
TrueType, во-вторых, входящие в Black Cat Linux шрифты в русской части
имеют недостаточно качественные хинты - специальные элементы, которые
помогают
растеризатору отображать символы небольших размеров (10-12). Поэтому,
если
для отображения на экране придется использовать шрифты Type1,
рекомендуется
через меню
View -> Zoom увеличить масштаб изображения до
150%. На качестве печатных документов этот недостаток шрифтов не
отразится,
так как разрешающая способность современных принтеров (300-600 dpi)
намного
выше, чем разрешение дисплеев (75-100 dpi).
Поскольку вышеупомянутые шрифты являются неотъемлемой частью
подсистемы
печати Black Cat Linux (пакет urw-fonts-2.0-5bc-noarch.rpm) и
устанавливается
по умолчанию, достаточно только подключить их к фонт-серверу. Для этого
нужно набрать команду
chkfontpath
--add
/usr/share/fonts/MICROSOFT-CP1251/Type1
Не подключайте этот каталог, если уже были подключены шрифты
TrueType,
как описано выше!
Перезапуск фонт-сервера
Файл конфигурации фонт-сервера находится в каталоге /etc/X11/fs.
Убедитесь,
что в нем имеются пути к подготовленным выше каталогам, и перезапустите
фонт-сервер командой /etc/rc.d/init.d/xfs restart. Убедитесь, что в
каталоге
/usr/share/fonts/default/TrueType появился файл encodings.dir - он
необходим
для работы с кодировкой CP1251 и создается скриптом перезапуска
фонт-сервера.
Теперь нужно дать X-серверу команду перечитать список шрифтов,
предоставляемых
фонт-сервером - для этого в X-терминале наберите команду xset fp rehash.
Проверьте при помощи программы xfontsel, появились ли в списке шрифты times
new
roman,
arial и courier new. Они должны иметь русские
буквы, в порядке, показанном на иллюстрации ниже:
Установка StarOffice
Перед установкой убедитесь, что в вашем домашнем каталоге доступно не
менее
160Мб. Для запуска установки, находясь в Х, выполните
so51inst/office51/setup.
Процесс установки подробно описан в документе
so51inst/documentation/setup.pdf.
Подключение шрифтов Type1 для печати
Для того, чтобы работать с кириллицей в StarOffice, необходимо сначала
добавить новые шрифты к драйверу печати StarOffice - библиотеке
XPrinter.
Для этого в пакет входит специальная утилита - SPAdmin. Выполните
ее командой
~/Office51/bin/spadmin
(~ означает домашний каталог). После этого нажать кнопки "Add Fonts"
->
"Browse" и указать каталог
/usr/share/fonts/MICROSOFT-CP1251/Type1,
как
показано на рисунке.
Далее подтвердите установку всех перечисленных шрифтов. Подсистема
печати
StarOffice готова к работе.
Запуск StarOffice с драйвером клавиатуры CP1251
Поскольку установленные нами шрифты имеют кодировку CP1251, необходимо
обеспечить возможность ввода кириллицы с клавиатуры именно в этой
кодировке,
сохранив возможность работать с KOI8-R во всех остальных приложениях.
Для
этого необходимо перед запуском StarOffice установить переменную
окружения
_XKB_CHARSET=MICROSOFT-CP1251. Это можно сделать непосредственно в
командной
строке запуска StarOffice, например так:
bash$
_XKB_CHARSET=MICROSOFT-CP1251
~/Office51/bin/soffice
Можно добавить строку "export
_XKB_CHARSET=MICROSOFT-CP1251" непосредственно в скрипт
запуска
StarOffice - ~/Office51/bin/soffice,
это
обычный текстовый файл.
Для переключения между русской и украинской раскладками
необходимо использовать
переключатель раскладок kkb, который интегрирован в Black Cat KDE.
Печать из StarOffice
Для вывода на принтер StarOffice генерирует формат PostScript.
Дополнительная
русификация интерпретатора Ghostscript не требуется, так как все
необходимые
шрифты встраиваются в документ.
Как это происходит?
Попробуем разобраться, для чего производились все перечисленные выше
действия.
Как уже упоминалось, в качестве драйвера печати StarOffice использует
библиотеку
Bristol
Xprinter. Эта библиотека может использовать шрифты только в формате
Type1, если шрифт содержит более 256 символов - используются только
первые
256, в порядке, описанном в векторе кодировки шрифта. В комплекте со
шрифтом
обязательно обязательно должен быть файл метрики в формате .afm.
При установке шрифтов программой SPAdmin информация о шрифте
добавляется
в файл xp3/psstd.fonts в формате, сходном с форматом файлов fonts.dir/fonts.scale.
В каталоге xp3/pssoftfonts и xp3/fontmetrics/afm создаются символические
ссылки соответственно на файлы шрифта и метрики. После этого Xprinter
"узнает"
о том, что у него появился новый шрифт.
При запуске StarWriter'а он запрашивает у Xprinter список
установленных
шрифтов. Только шрифты, перечисленные в psstd.fonts, появятся в списке
доступных шрифтов StarWriter'a. А для отображения на экране из X-сервера
запрашивается первый попавшийся шрифт, у которого в названии второе поле
(Family) совпадает с тем, что написано в psstd.fonts, при этом поля
Foundry
и Encoding игнорируются. То есть, если в Xprinter установлен шрифт в
одной
кодировке, а в X - в другой, использовать их в StarOffice практически
невозможно.
Это происходит со стандартными шрифтами Times, Helvetica, Courier. К
счастью,
если установлены шрифты Times New Roman, Arial, Courier New - им
отдается
приоритет.
Проблемы при работе со StarOffice
Основная проблема StarOffice 5.1a - несовместимость с форматом
Office97/2000.
Просьба не обращаться к автору этого документа с вопросами, почему при
открытии
таких файлов не видно русских букв! Напишите своим корреспондентам,
чтобы
они слали вам документы только в формате Word 6.0/95 и Excel 5.0/95.
Другая
проблема - сохранение файлов в формате HTML, при этом русские буквы
превращаются
в ¨aut; и т.д. В читаемый формат их можно перевести при помощи
входящей
в дистрибутив программы recode, с ключом -html.
Еще одна проблема - работа с почтой и новостями. Исходящая почта
отправляется
только в формате Quoted Printable и только с charset=iso8859-1 в
заголовке,
то есть пользоваться почтой и новостями в этой версии StarOffice вообще
не рекомендуется.
Заключение
Несмотря на отмеченные недостатки, StarOffice - единственный пакет,
который
позволяет профессионально работать с документами в привычном окружении
и обмениваться ими с пользователями Windows, причем абсолютно легально.
Авторы и издатели Black Cat Linux выражают благодарность компании Sun
Microsystems за разрешение включить StarOffice в состав
дистрибутива
Black
Cat Linux.