суббота, апреля 09, 2011

DocBook 5 + Кириллица в PDF

Есть отличный официальный стандарт OASIS для написания технической документации с наименованием DocBook (http://docbook.org/). Сейчас в ходу 5 версия. Из xml DocBook с использованием xsl можно получить xhtml одной страницей, xhtml по главам, PDF (+Apache FOP), ePub, WinHelp. Все ради того, чтобы сырцы технической документации были в одном месте, подвергались номальному версионному контролю, а из них генерировали ту форму документации, которая требуется. Обычно требуется только 3 вещи: (x)html одной страницей, (x)html по главам и книжка PDF.
Наиболе адекватный визуальный toolchain для работы с DocBook, на мой взгляд, предлагает http://www.oxygenxml.com/. В коробке все что нужно для работы, включая Apache FOP.

Если вы будете создавать документы на кириллице, то с xhtml проблем не возникнет. А при генерации PDF с xsl из коробки вместо кириллицы получите решетки - символы хеша (#). Вот наименования фонтов, с которыми PDF у меня выглядел нормально:
Arial
Arial Unicode MS
Courier New

Чтобы все заработало присвойте значению body.font.family и title.font.family наименование нужного фонта.

Вообще проблемы с русским возникают из-за Apache FOP. Вот здесь хорошие советы по решению вопроса http://www.sql.ru/forum/actualthread.aspx?bid=38&tid=491835&pg=1
Еще ссылки по теме:
http://forum.vingrad.ru/forum/topic-294568.html
http://www.sagehill.net/docbookxsl/AddFont.html
http://www.oxygenxml.com/doc/ug-oxygen/tasks/add-font-to-builtin-FOP-simplified.html

2 комментария:

killout комментирует...

Олег, поделитесь пожалуйста соим опытом, какие материалы пчитать, чтобы девелопть на докбуке.

Unknown комментирует...

Что-то я выпал из жизни. http://www.docbook.org/tdg5/en/html/docbook.html
А вообще там не так много "ходовых" тегов - сплошные sect1 и para.

Мой список блогов