Подтвердить что ты не робот

Как создать простой pdf файл в python?

Я ищу способ вывода ОЧЕНЬ простого PDF файла из Python. В основном он будет состоять из двух столбцов слов, один по-русски (так utf-8 символов), а другой по-английски.

Я искал поисковые запросы в течение примерно часа, и найденные мной пакеты либо массивные излишества (и до сих пор не содержат полезных примеров), например ReportLab, либо, похоже, предполагают, что единственное, что когда-либо будет делать с pdfs объединяет несколько из них (PyPdf, pdfrw).

Возможно, мне просто не хватает чего-то очевидного, но все, что я видел, похоже, начинают массовую дискуссию о принятии 17 pdf файлов и конвертации их в плакат шириной 60 футов с 23 панелями (возможно, небольшое преувеличение) и оставьте меня интересно, как получить программу "Hello World". Любая помощь будет оценена.

4b9b3361

Ответ 1

Вы можете использовать wkhtmltopdf. Это утилита командной строки, которая использует Webkit для преобразования html в pdf.

Вы можете сгенерировать свои данные в виде html и создать его с помощью css, если хотите, а затем использовать wkhtmltopdf для создания файла pdf.

Ответ 2

rst2pdf делает именно то, что вы хотите; с измененным вводом текста

Стили могут быть применены inline с естественным стилем RST, а свойства уровня документа (включая шрифты) управляются с помощью таблицы стилей.

Ответ 3

Попробуйте pod (открытый документ python) - это библиотека, которая позволяет легко создавать документы, содержимое которых является динамическим.

pod создает еще один ODF текстовый документ (ODT), который содержит желаемый результат. pod может вызывать OpenOffice в режиме сервера, чтобы сгенерировать результат в PDF, DOC, RTF или TXT.

Ответ 4

A recipe для преобразования текстового файла в PDF. Немного длинный, но чистый Python и без внешних зависимостей.

Ответ 5

вы также можете использовать weasyprint, он поддерживает специальные функции paging paging media

Ответ 6

Более простой подход - использовать пакет csv для записи двух столбцов в CSV файл, затем прочитать его в электронную таблицу и распечатать в формате pdf. Не 100% python, но, возможно, на 90% меньше работы...