Конвертация html в pdf linux, windows на python Weasyprint

Какое-то время назад мне понадобилось печатать этикетки на бумаге A4 с делениями, т.е. какие-то изображения в чётко определенных местах страницы. Задача несложная, можно взять любой продвинутый графический редактор вроде Corel Draw, накидать туда картинок и готово.
Но, во-первых, когда количество макетов переваливает за 10, это становится неудобно. Плюс макет может неожиданно поменяться.
А, во-вторых, я за использование открытого ПО, тем более для такой простой задачи.

Задумался, как можно создавать макеты из набора картинок автоматически каким-нибудь например shell-скриптом. Пришла идея генерировать pdf. Вот только из чего? Самый простой и знакомый язык разметки - html. На том и порешим, гугл любезно ответил, что есть чудо библиотека pisa для python.
Недолго думая, накатал несложный скрипт, сверстал макет (не без труда, конечно, со своими "заморочками", но всё же) и был этому рад около года или больше.
Недавно решил модернизировать макет и процесс сборки, устранить недостатки. Повозился с pisa, установил её более свежый вариант xhtml2pdf, но так и не добился исчезновения чёрной рамки вокруг frame-объекта. На одном из сайтов встретил упоминание про weasyprint. Это другая разработка, тоже на python. Работает исправно.

Ещё раз: конвертация html в pdf на Python в linux или windows осуществима на pisa, xhtml2pdf, или лучше всего Weasyprint.
weasyprint.org - официальный сайт, там есть и краткая документация.

Кстати weasyprint умеет также создавать png картинки из html сайтов, так что сфера применения широкая :-)

0 comments so far:

Отправить комментарий

  • HTML-теги запрещены
  • Строки и параграфы переносятся автоматически.

Подробнее о форматировании

Image CAPTCHA