Как создать PDF-файл, включая изображения и текст, из Python?

Я ищу способ создать лист этикеток в виде файла PDF из программы Python. Каждая метка содержит одно или два изображения и несколько строк текста (один и тот же шрифт, например, Helvetica или Arial, но, возможно, разного размера, с использованием полужирного шрифта и курсива). Это метки, важно, чтобы элементы правильно располагались на странице. Некоторые метки являются адресами, поэтому текст может различаться, иметь разную длину и количество строк.

Я хотел бы иметь возможность определить, когда текст не помещается в доступном для него пространстве, чтобы программа могла автоматически попробовать несколько стратегий (например, изменить шрифт на Arial Narrow, уменьшить размер шрифта), прежде чем выйти из строя. Я определенно не хочу, чтобы текст переполнялся или переносился без уведомления.

Я просмотрел pypdf, но, похоже, он не может делать то, что мне нужно (или, может быть, я что-то упускаю). Я не возражаю против создания документа в другом формате с помощью библиотеки, поддерживающей нужные мне функции, если ее можно преобразовать в PDF программным путем. В крайнем случае я также могу использовать библиотеку, которая может создать растровое изображение, потому что его можно тривиально преобразовать в PDF, но я предпочитаю PDF, содержащий собственный текст, а не только его растровое изображение.


person Catalin D Voinescu    schedule 04.11.2013    source источник
comment
Вы можете проверить библиотеку pdfme. Это самая мощная библиотека на Python для создания PDF-документов, и она может делать все, что вам нужно.   -  person Felipe Sierra    schedule 15.07.2021


Ответы (1)


Загляните в репортлаб.

Вот руководство пользователя: https://www.reportlab.com/docs/reportlab-userguide.pdf

Вот хороший Tutorail: http://www.blog.pythonlibrary.org/2010/03/08/a-simple-step-by-step-reportlab-tutorial/

person T. Christiansen    schedule 04.11.2013