Как создать простой pdf файл в python?
Я ищу способ вывода ОЧЕНЬ простого PDF файла из Python. В основном он будет состоять из двух столбцов слов, один по-русски (так utf-8 символов), а другой по-английски.
Я искал поисковые запросы в течение примерно часа, и найденные мной пакеты либо массивные излишества (и до сих пор не содержат полезных примеров), например ReportLab, либо, похоже, предполагают, что единственное, что когда-либо будет делать с pdfs объединяет несколько из них (PyPdf, pdfrw).
Возможно, мне просто не хватает чего-то очевидного, но все, что я видел, похоже, начинают массовую дискуссию о принятии 17 pdf файлов и конвертации их в плакат шириной 60 футов с 23 панелями (возможно, небольшое преувеличение) и оставьте меня интересно, как получить программу "Hello World". Любая помощь будет оценена.
Ответы
Ответ 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% меньше работы...