2013-07-02 3 views
0

Мне нужно создать XSL-FO из существующего файла Docx, а затем преобразовать его в файл PDF. Я нашел XSLT от проекта DOCX4J. Я просто хочу знать, не использую ли вообще DOCX4J, как я могу применить XSLT к файлу DOCX для создания файла XSL-FO?Создать XSL-FO из Office OpenXML (DOCX)

+0

Взгляните на [этот вопрос] (http://stackoverflow.com/questions/17029603/xslt-xml-word-to-xsl-fo-pdf). Из его ответа вам, вероятно, нужно следовать шагам, очевидно, кроме # 4. – bytebuster

+0

Спасибо, я проверил, что работает только для Word 2003. – hardywang

+1

Во-первых, вы не можете просто применить XSLT к файлу DOCX. Файл DOCX представляет собой почтовый контейнер со структурой каталогов и XML-файлами внутри. Эта информация инкапсулируется в формате WordML (который вы получаете, если запускаете Word и выполняете «Сохранить как XML». Таким образом, вам понадобится код, чтобы в первую очередь разархивировать файл, а затем вы можете изменить XSL, на которые ссылается @bytebuster использовать документ(), чтобы получить доступ к отдельным фрагментам XML (например, styles.xml внутри zip). Ссылка на XSL может быть легко изменена для работы с WordML для> Word 2003, все, что необходимо, - это изменить пространства имен , –

ответ

0

Вы не можете легко использовать XLST docx4j без использования остальной части docx4j, поскольку XSLT в значительной степени зависит от функций расширения Xalan, которые вызывают код Java docx4j.

Смежные вопросы