Создание выходных данных из XML и CSS с помощью docbook - работа для HTML, ошибка для PDF
Начиная с серии XML-файлов и таблицы стилей, я генерирую HTML-файл, используя docbook-xsl-ns-1.73, libxslt-1.1.22.win32 и fop-0.94. таблица стилей говорит, что куски кода должны иметь пронумерованные линии и серый фон. Вот часть задачи и, которая преобразует xmls в html:
<exec executable="${XSLTPROC_EXECUTABLE}">
<arg value="--output" />
<arg value="${target.html.dir}/${book}_toc.xml" />
<arg value="--xinclude" />
<arg value="--param" />
<arg value="html.stylesheet" />
<arg value="'css/visixd-docbook.css'" />
<arg value="--param" />
<arg value="chunk.separate.lots" />
<arg value="1" />
<arg value="--param" />
<arg value="chunk.first.sections" />
<arg value="1" />
<arg value="--param" />
<arg value="chunk.section.depth" />
<arg value="8" />
<arg value="--param" />
<arg value="toc.section.depth" />
<arg value="3" />
<arg value="--param" />
<arg value="navig.graphics" />
<arg value="1" />
<arg value="--param" />
<arg value="ignore.image.scaling" />
<arg value="1" />
<arg value="src/reusable/xsl/makeCustomToc.xsl" />
<arg value="src/workspace/${book}/${language}/${book}.xml" />
</exec>
теперь эта задача работает отлично, производя желаемый результат.
аналогичная задача, используемая для преобразования xmls в pdf, имеет следующие параметры:
<exec executable="${XSLTPROC_EXECUTABLE}">
<arg value="--output" />
<arg value="${target.fo.dir}/${book}.fo" />
<arg value="--param" />
<arg value="paper.type" />
<arg value="'USletter'" />
<arg value="--param" />
<arg value="img.src.path" />
<arg value="'src/workspace/${book}/${language}/'" />
<arg value="--param" />
<arg value="fop.extensions" />
<arg value="0" />
<arg value="--param" />
<arg value="fop1.extensions" />
<arg value="1" />
<arg value="--param" />
<arg value="pdf.stylesheet" />
<arg value="'css/visixd-docbook.css'" />
<arg value="--xinclude" />
<arg value="--param" />
<arg value="chunk.separate.lots" />
<arg value="1" />
<arg value="--param" />
<arg value="chunk.first.sections" />
<arg value="1" />
<arg value="--param" />
<arg value="chunk.section.depth" />
<arg value="8" />
<arg value="--param" />
<arg value="toc.section.depth" />
<arg value="3" />
<arg value="${DOCBOOK_XSL_HOME}/fo/docbook.xsl" />
<arg value="src/workspace/${book}/${language}/${book}.xml" />
</exec>
проблема в том, что моя задача муравья для преобразования PDF не в состоянии отформатировать строки кода, как указано в таблице стилей. что может быть не так? учитывая, что преобразование в html использует ту же таблицу стилей и работает. где я должен искать решение? заранее спасибо.
1 ответ
Вы пытаетесь отформатировать вывод FO/PDF с помощью CSS. Это не работает.
Стандартные таблицы стилей DocBook XSL не имеют параметра, называемого pdf.stylesheet
, И chunk.*
параметры предназначены только для вывода в формате HTML.
Что вы подразумеваете под "кусками кода" и "строками кода"? Ты имеешь ввиду <programlisting>
элементы в источнике XML?
Вам следует обратиться к полной справке по использованию DocBook XSL: http://www.sagehill.net/docbookxsl/index.html.