Как генерировать PDF документы из CSS 3 в Java - PullRequest
2 голосов
/ 22 июля 2011

В настоящее время я работаю над проектом, который включает в себя преобразование сложных структурированных изображений и текста и преобразование их в PDF с использованием Java.Моим первым инстинктом было создание HTML / CSS, который представлял способ вывода данных, а затем использование библиотеки Java для преобразования этого HTML / CSS в PDF.Проводя исследование, я не нашел хороших решений, учитывающих свойства CSS 3, такие как border-radius, box-shadow и transform: rotate.Я изучил iText с Flying Saucer и PD4ML.

Кто-нибудь знает о хорошем бесплатном или коммерческом продукте, который обновлен и поддерживает такие новые технологии CSS?

ИлиВозможно, я просто иду по неверному пути, пытаясь использовать CSS / HTML для начала?

Ответы [ 3 ]

1 голос
/ 22 июля 2011

HTML / CSS звучит как ненужные накладные расходы.Поскольку ваши данные являются «структурированными» изображениями и текстом, если их легко конвертировать в XML, вам может повезти с Apache FOP

1 голос
/ 22 июля 2011

Я не думаю, что HTML / CSS хорошая идея. Заставить ваши изображения и отформатировать их с помощью html / css - это одно дело, а потом преобразовать это в PDF.

PDF поддерживает встраивание изображений и форматирование текста, так почему бы вам не использовать его напрямую? Генерировать изображения с помощью любого инструмента Java / lib и печатать PDF с помощью iText или iReport не сложнее, чем делать это только с html / css.

0 голосов
/ 22 июля 2011

Вы можете использовать OpenOffice без головы с JODConverter (http://www.artofsolving.com/opensource/jodconverter), чтобы открыть временный файл HTML, а затем сохранить его в Экспорт в PDF из OpenOffice без головы. Если у вас есть относительно простой файл HTML / CSS, вам следуетвсе в порядке. Я использовал это немного, и это кажется надежным.

Я не знаю специфику CSS3 в моей рекомендации. Я слышал слухи об использовании безголового Firefox для чего-то подобного,но вы бы вышли за пределы Java. Поскольку я лично этого не делал, не могу предложить слишком много комментариев к нему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...