Похожие записи:
- pdf extract selected chapter включает выбранную часть оглавления
- Обработка данных формы -заголовки отправляются разные, это нормально?
- Хочу поныть. Моему проекту по созданию бесплатных магазинов 6 лет! И он особо никому не нужен
- Функция JS для инициализации свойств
- Принцип инверсии зависимостей при подключении к SQL Server
Sly32
Адептам вопрос.
Есть задача — забрать шаблон формы PDF, добавить маппинг данных в нужные области — имя, адрес и etc. На основании этого сгенерить новый файл и сохранить его для дальнейщего использования.
Пока Нашел две библиотеки подходящих —
PyPDF2
Для получения темплэйта, и разбивания на страницы если надо
Для создания новых слоев с обьектами — позволяет создавать что нужно, потом все это мержится в новый документ.
Может кто выполнял на практике подобное — подскажите что интереснее. Смотрел еще репортлаб, фитц
drDaemon
Например верстаем обычный Html темплейт. На его основе создаем Html документ. А затем используя HeadlessChrome, экспортируем этот документ в формате PDF.
Реализация очень простая. Можно сделать в виде микросервиса. (может быть можно готовый докер контейнер найти)
Sly32
Есть несколько подходов к решению.
Например верстаем обычный Html темплейт. На его основе создаем Html документ. А затем используя HeadlessChrome, экспортируем этот документ в формате PDF.
Реализация очень простая. Можно сделать в виде микросервиса. (может быть можно готовый докер контейнер найти)
Да, знаю такой вариант, но мне он не очень подходит. У меня уже есть исходный темплэйт в пдф и данные в виде json-файла, они будут приходить из DynamoDB, но на первом этапе реализации это неважно. Из них создаю слой в виде опять же PDF-файла. На данный момент нашел две подходящие либы — FPDF и ReportLab. Вторая мощнее, но она странно обрабатывает координаты документа — с нижнего левого угла. Потом все это мержится в общий слой посредством метода из PyPdf2 либы.
Мне тут даже микросервис не нужен — это все будет крутиться на амазоновской лямбде, заказчик хочет экономную серверлесс реализацию)
может быть можно готовый докер контейнер найти
Такой контейнер собрать — максимум полчаса, но как указал — нет необходимости