Вывод XHMTL с помощью xsltproc - PullRequest
       15

Вывод XHMTL с помощью xsltproc

2 голосов
/ 11 августа 2009

Справочная информация:
Мы создали клиентский портал, который выбирает нужные точки данных из нашей базы данных и выводит их в виде XML. Клиент предоставил нам желаемый формат в виде таблицы стилей XSLT. Таким образом, наши результаты для них предпочтительно являются наиболее удобным для пользователя форматом, предпочтительно PDF. Наш сервис находится на Perl, поэтому мы попробовали различные методы в различных модулях CPAN perl, а также использовали Apache FOP с внешним Java-сервисом, чтобы перейти прямо из XML / XSL в PDF, но для нашей ИТ-команды это кошмар повторяется в производстве, и результаты визуально меньше звездных.

Статус:
Мы пытаемся использовать xsltproc от xmlsoft для преобразования XML / XSL в HTML, а затем либо доставить его, либо преобразовать в PDF, но наша проблема пока заключается в том, что он выводит устаревший HTML, что вызывает проблемы со стилем и представлением во всех случаях. Поэтому ...

Вопрос :
Мы пытаемся выяснить, есть ли способ сделать вывод xsltproc с помощью пользовательской спецификации, в частности, xhtml, чтобы мы могли стилизовать ее и экспортировать в PDF-файл в предпочтительным образом. Это вообще возможно, или есть более разумный способ сделать это?

1 Ответ

3 голосов
/ 12 августа 2009

Чтение http://www.sagehill.net/docbookxsl/OtherOutputForms.html.

Чтобы сгенерировать вывод XHTML с помощью xsltproc, вы можете использовать такие команды:

Single file XHTML:
xsltproc  \
     --output  myfile.xhtml  \
    xhtml/docbook.xsl  myfile.xml

Chunked XHTML:
xsltproc  \
    --stringparam chunker.output.doctype-public \   For versions 1.61 and earlier
               "-//W3C//DTD XHTML 1.0 Transitional//EN" \
    --stringparam chunker.output.doctype-system \   For versions 1.61 and earlier
               "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" \
    xhtml/chunk.xsl  myfile.xml
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...