vitus_wagner: My photo 2005 (Default)
[personal profile] vitus_wagner
Интересно, чем бы таким опенсурсным и не использующим X-овых библиотек (headless, серверным) можно в наше время генерировать PDF-документы, содержащие в основном обычный текст с минимальными шрифтовыми выделениямии (уровня примерно HTML 2.0 - заголовки двух-трех уровней, пара видов логического выделения в тексте, 2-3 вида списоков).

Но чтобы нормально работало по меньшей мере со всем Basic Multilingual Plane юникода (входной формат - что-то в utf-8).

Варианты на базе pdftex не предлагать. Про них и лежащие там грабли сам знаю.
Варианты на базе xelatex или luatex готов посмотреть, если мне убедительно объяснят, что вот здесь все хорошо, и будет работать со всеми буковками, которые есть в шрифте DejaVuSans, LiberationSerif или что там оно испольузе

В принципе, сейчас библиотеки для создания pdf есть во всех подряд языках. Но вот попробовал питоновскую (которая reporlab, вернее командно-строчная обертка вокруг неё - rst2pdf) не тянет кириллицы совсем. Это я еще не злобствую, и не подсовываю туда right-to-left письменности.

То что у libreoffice есть headless-режим я знаю.

Про apache fop с удовольствием бы послушал рассказы тех, кто щупал.

Date: 2014-12-12 10:03 pm (UTC)
From: [identity profile] greenvoid.livejournal.com
Есть только пример для FOP 0.20
файл /usr/share/fop/conf/userconfig.xml

Не получается вставить xml - вот пример http://pastebin.com/YeSGQKya

И в XLS-FO файле: <fo:block font-family="sans-serif" font-size="24pt" font-weight="bold" >Тест </fo:block>

XML файлы для шрифтов создаются при помощи
java -classpath "<тут fop.jar + остальные>" org.apache.fop.fonts.apps.TTFReader font.ttf font.xml

Не знаю как сейчас, но в старых версиях FOP не умел right-to-left тест - для иврита приходилось переворачивать строки самому используя libfribidi.


А еще есть PrinceXML, он не опенсорс но free for non-commercial use. Конвертируем HTML в PDF, понимает CSS и JavaScript.
Идет в виде статически-слинкованного бинарника и не требует X.
Бесплатная версия добавляет маленький логотип в угол страницы.
Edited Date: 2014-12-12 10:10 pm (UTC)

Date: 2014-12-14 09:53 pm (UTC)
From: [identity profile] greenvoid.livejournal.com
Насчет docbook не в курсе, использовал FOP только для генерации простых инвойсов.

Не понял вопрос насчет шрифтов - какие будут в конфиг файле, те и будут использованы. Хоть dejavu, хоть остальные. По имени из xsl-fo + стиля выбирается соотв. блок font. Имя шрифта и стиль внутри файла ttf файла роли не играет.
Так на проекте решалась поддержка иврита, арабского, и какого-то из восточных (Малайзия вроде-бы) языков - просто перезаписывали ttf файлы и пересоздавали xml метрик, конфиг fop и шаблоны не меняли.

Можно запустить fop с -d и посмотреть чего ему не хватает.

Profile

vitus_wagner: My photo 2005 (Default)
vitus_wagner

June 2025

S M T W T F S
1 23 4 56 7
89 1011 12 13 14
1516 17 18 192021
22232425262728
2930     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 23rd, 2025 02:33 am
Powered by Dreamwidth Studios