Есть ли библиотека, способная генерировать XSL-FO из документов Office XML, таких как DOCX, XLSX? - PullRequest
3 голосов
/ 08 апреля 2011

Кто-нибудь знает библиотеку, способную генерировать XSL-FO из файла Microsoft Office Open XML, например Word DOCX или Excel XLSX?

Учитывая, что эти файлы Office в основном представляют собой XML в ZIP-файле, я считаю, что было бы довольно просто сгенерировать XSL-FO из них, применив соответствующие преобразования XSLT - хотя написание XSLT заняло бы некоторое время. Но если это просто, как я подозреваю, то, возможно, кто-то написал библиотеку, которая это делает, или выпустил преобразования XSLT, которые это делают.

Эта статья о библиотеке Microsoft MSDN содержит пример создания XSL-FO с файлами WordprocessingML Word 2003, но я не видел ничего для более нового формата Open XML.

У кого-нибудь есть предложения? Библиотека Java будет предпочтительнее, но все будет рассмотрено.

Ответы [ 2 ]

2 голосов
/ 09 апреля 2011

docx4j поддерживает это для docx; начиная с версии 3.3.0 он находится в отдельном проекте https://github.com/plutext/docx4j-export-FO

Он использует XSLT для создания XSL-FO. XSLT использует функции расширения Java для вызова методов docx4j для выполнения большей части работы, сохраняя при этом сам XSLT относительно простым.

docx4j использует FOP для преобразования XSL FO в PDF.

В docx4j есть поддержка xlsx, но нет встроенного экспорта из XLSX в XSL FO.

2 голосов
/ 09 апреля 2011

RenderX имеет набор общедоступных таблиц стилей, которые преобразуют WordML в XSL-FO

http://www.renderx.com/tools/word2fo.html

Эти таблицы стилей были подготовлены Команда разработчиков RenderX и Microsoft для общего пользования. Они есть используется для преобразования документов в Microsoft WordprocessingML XML словарь в документы в W3C XSL FO (XSLFO) словарь. Эти универсальные таблицы стилей производят XSL FO (XSLFO) подходит для RenderX XEP Двигатель.

...