|
|
 |
 |
Библиотека сайта или "Мой Linux Documentation Project"
|
 |
| |
Другие форматы этого документаДанная глава не является переводом соответствующей главы оригинального документа,
с разрешения Al Dev (Alavoor Vasudevan), она переписана для учета особенностей
переведенного документа. Оригинальный документ распространяется в 14 различных форматах - DVI, Postscript,
Latex, Adobe Acrobat PDF, LyX, GNU-info, HTML, RTF(Rich Text Format), обычный текст, Unix man page,
отдельный HTML файл, SGML (Linuxdoc format), SGML (Docbook format), MS WinHelp.
Переведенный документ доступен в форматах - DocBook XML, HTML и PDF. Оригинал документа находится на -
Домашняя страница перевода http://mvd.h1.ru/tr/ Переведенный документ написан в формате DocBook XML. Перевод документа в html формат выполнен с помощью утилиты xsltproc входящей в пакет libxslt.
Пакет libxslt можно взять на http://xmlsoft.org. Также потребуются Docbook DTD с
http://www.oasis-open.org/docbook/.
и Docbook XSL с http://docbook.sourceforge.net/projects/xsl/. Преобразование в HTML формат выполняется следующим образом:
Формат Acrobat PDF можно получить следующим образом:
Создается файл docbook_ru_fo.xsl содержащий следующие строки
<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version='1.0'
xmlns="http://www.w3.org/TR/xhtml1/transitional"
exclude-result-prefixes="#default">
<xsl:import href="/usr/share/xml/docbook/xsl-stylesheets/fo/docbook.xsl"/>
<xsl:param name="paper.type" select="'A4'"/>
<xsl:param name="body.font.family">TimesNewRoman</xsl:param>
<xsl:param name="title.font.family">Arial</xsl:param>
<xsl:param name="monospace.font.family">CourierNew</xsl:param>
<xsl:param name="sans.font.family">Arial</xsl:param>
<xsl:param name="dingbat.font.family">TimesNewRoman</xsl:param>
<xsl:param name="body.font.master">8</xsl:param>
</xsl:stylesheet>
|
выполняется команда
xsltproc -o Diskless-HOWTO.fo docbook_ru_fo.xsl Diskless-HOWTO.xml |
в результате получается файл в формате fo, который далее можно обрабатывать программой
преобразования форматированных объектов в pdf формат. Одна из таких программ fop
доступна на http://xml.apache.org/fop/. Так как fop написана на
java, вам понадобится среда запуска java программ, ее можно взять на сайте Sun
http://java.sun.com/j2se/.Заметка: Если вы возьмете Docbook XSL версии выше 1.45,
то в получившемся файле Diskless-HOWTO.fo вам следует заменить выражение
master-references= на master-name=, так как fop
(по крайней мере, версии 0.20.2RC) не понимает данной нотации из XSL 1.0 C fop не поставляются шрифты, содержащие кириллические символы, поэтому для создания
документов с внедренными кириллическими шрифтами вам потребуется выполнить дополнительную
настройку fop. Последующие действия предполагают размещение пакета fop в каталоге
/usr/local/fop
Возьмите ttf шрифты содержащие кириллические символы, например, подойдут шрифты Arial, CourierNew, TimesNewRoman. Создайте к выбранным шрифтам метрики в XML формате. Метрики будем сохранять в каталоге
/usr/local/fop/metrics. Перед выполнением последующего шага нужно установить значение переменной
окружения CLASSPATH, например для bash:
export CLASSPATH=/usr/local/fop/build/fop.jar:/usr/local/fop/lib/xerces.jar:\
/usr/local/fop/lib/xalan.jar:/uar/local/fop/lib/batik.jar |
Для каждого из файлов шрифтов
arial.ttf, arialbd.ttf, ariali.ttf, arialbi.ttf,
cour.ttf, courbd.ttf, couri.ttf, courbi.ttf,
times.ttf, timesbd.ttf, timesi.ttf, timesbd.ttf,
выполните команду
java org.apache.fop.fonts.apps.TTFReader <путь к файлу шрифта> /usr/local/fop/metrics/<имя шрифта>.xml |
Теперь необходимо откорректировать файл /usr/local/fop/conf/userconfig.xml. Его секция fonts
должна выглядеть так:
<fonts>
<!-- TTF fonts -->
<!-- Arial -->
<font metrics-file="/usr/local/Fop/metrics/arial.xml" kerning="yes" embed-file="<путь к каталогу со шрифтами>/arial.ttf">
<font-triplet name="Arial" style="normal" weight="normal"/>
</font>
<font metrics-file="/usr/local/Fop/metrics/arialbd.xml" kerning="yes" embed-file="<путь к каталогу со шрифтами>/arialbd.ttf">
<font-triplet name="Arial" style="normal" weight="bold"/>
</font>
<font metrics-file="/usr/local/Fop/metrics/ariali.xml" kerning="yes" embed-file="<путь к каталогу со шрифтами>/ariali.ttf">
<font-triplet name="Arial" style="italic" weight="normal"/>
</font>
<font metrics-file="/usr/local/Fop/metrics/arialbi.xml" kerning="yes" embed-file="<путь к каталогу со шрифтами>/arialbi.ttf">
<font-triplet name="Arial" style="italic" weight="bold"/>
</font>
<!-- TimesNewRoman -->
<font metrics-file="/usr/local/Fop/metrics/times.xml" kerning="yes" embed-file="<путь к каталогу со шрифтами>/times.ttf">
<font-triplet name="TimesNewRoman" style="normal" weight="normal"/>
</font>
<font metrics-file="/usr/local/Fop/metrics/timesbd.xml" kerning="yes" embed-file="<путь к каталогу со шрифтами>/timesbd.ttf">
<font-triplet name="TimesNewRoman" style="normal" weight="bold"/>
</font>
<font metrics-file="/usr/local/Fop/metrics/timesi.xml" kerning="yes" embed-file="<путь к каталогу со шрифтами>/timesi.ttf">
<font-triplet name="TimesNewRoman" style="italic" weight="normal"/>
</font>
<font metrics-file="/usr/local/Fop/metrics/timesbi.xml" kerning="yes" embed-file="<путь к каталогу со шрифтами>/timesbi.ttf">
<font-triplet name="TimesNewRoman" style="italic" weight="bold"/>
</font>
<!-- CourierNew -->
<font metrics-file="/usr/local/Fop/metrics/cour.xml" kerning="yes" embed-file="<путь к каталогу со шрифтами>/cour.ttf">
<font-triplet name="CourierNew" style="normal" weight="normal"/>
</font>
<font metrics-file="/usr/local/Fop/metrics/courbd.xml" kerning="yes" embed-file="<путь к каталогу со шрифтами>/courbd.ttf">
<font-triplet name="CourierNew" style="normal" weight="bold"/>
</font>
<font metrics-file="/usr/local/Fop/metrics/couri.xml" kerning="yes" embed-file="<путь к каталогу со шрифтами>/couri.ttf">
<font-triplet name="CourierNew" style="italic" weight="normal"/>
</font>
<font metrics-file="/usr/local/Fop/metrics/courbi.xml" kerning="yes" embed-file="<путь к каталогу со шрифтами>/courbi.ttf">
<font-triplet name="CourierNew" style="italic" weight="bold"/>
</font>
</fonts> |
И последний шаг, нужно дать команду:
/usr/local/fop/fop.sh -c /usr/local/fop/conf/userconfig.xml -fo Diskless-HOWTO.fo -pdf Diskless-HOWTO.pdf |
Заметка: Созданный таким способом pdf успешно просматривается программами Acrobat Reader и gv,
но его нельзя просмотреть программой xpdf. Если вы знаете, каким образом сделать возможным просмотр в программе xpdf сообщите
мне, пожалуйста, по адресу mvd@altlinux.ru.
У меня не получилось успешно внедрять pfb шрифты, все кириллические символы в pdf документе заменялись символом '#'.
Если вы знаете способ решения этой проблемы, сообщите мне по тому же адресу.
|
|
 |
 |
 |
|