2017-02-07 3 views
2

Каковы хорошие варианты на основе Python для создания строго разработанных отчетов .pdf из .html?Python: создать автоматизированный строго разработанный многостраничный отчет .pdf от .html

Я приложил проект .pdf, чтобы проиллюстрировать следующие моменты:

  • Конструкция отчета достаточно строго разработан. Другими словами «Выглядит».
  • Отчет содержит сложную векторную графику (пакет: Matplotlib). Они могут немного отличаться по размеру.
  • В отчете включены изображения.
  • Отчет содержит большое количество номеров/строк, заполненных динамически.
  • Оптимально, решение будет использовать пакеты с открытым исходным кодом.
  • Мы создаем наш .html с Django.
  • Отчет может охватывать несколько страниц.

Похоже, что было уже много очень разнообразных пакетов, облегчающих отчетность. Просто чтобы назвать несколько, есть xhtml2pdf, weasyprint, django-wkhtmltopdf.

По моему опыту, с этими инструментами легко создавать PDF-файлы из вашего контента. Трудная часть возникает, когда .pdf необходимо вписаться в строго определенную структуру дизайна, как в нашем случае. К сожалению, я не смог найти пример .pdfs для разных пакетов генерации PDF, которые имеют высокоразвитую структуру.

Каков твой опыт? Какие варианты сработали для вас? Есть ли хорошо сделанные сложные примеры, которые я забыл?

Some example of a strictly-designed "Looks matter" report

+0

Возможно, вы также захотите рассмотреть [reportlab] (http://www.reportlab.com). – ImportanceOfBeingErnest

ответ

2

Недавно я использовал weasyprint и дзиндзя сделать автоматизированное формирование отчета из HTML. Он работал хорошо, и я считаю, что он будет способен удовлетворить ваши строгие требования к формату. Однако я не использовал других.

В моем отчете были изображения, включая графики, преобразованные в изображения, нормальный динамически сгенерированный текст, а также большие таблицы. Все это было ограничено размером страницы 9x11. Weasyprint делает хорошую работу с разбивкой по страницам автоматически, но также имеет конфигурацию в этом отношении.

Я нашел это руководство, чтобы быть очень полезным: http://pbpython.com/pdf-reports.html

Хотя я думаю, что панды тотально избыточны для HTML генерации графиков и вы потеряете много конфигурируемости использования.

1

Вы можете увидеть этот Python пакет: weasyprint

Веб-страница: http://weasyprint.org/

Oficial документ: http://weasyprint.readthedocs.io/en/latest/

Это здорово, потому что вы можете создать PDF из веб-страницы или файла HTML, вы можете иметь конфликты с некоторыми CSS (которые указаны в документации), но он обеспечивает то, что вам нужно

Смежные вопросы