Библиотека преобразования HTML в PDF с открытым исходным кодом Python
Попробуйте эту бесплатную библиотеку Python с открытым исходным кодом для преобразования HTML в документы PDF.
Что такое xhtml2pdf?
Xhtml2pdf — это библиотека Python с открытым исходным кодом, предназначенная для преобразования содержимого HTML в документы PDF с упором на сохранение исходной структуры и стиля. Эта мощная библиотека легко преобразует веб-страницы в профессиональные PDF-файлы, готовые к печати.
Начало работы с xhtml2pdf
Для установки и использования xhtml2pdf вам потребуется Python версии 3.8.0 или выше. Итак, сначала установите Python, а затем используйте приведенные ниже команды для установки xhtml2pdf на свой компьютер, используя pip и виртуальная среда.
Линукс
python -m venv env
. env/bin/activate
pip install xhtml2pdf
MacOS
python -m venv env
. env/bin/activate
pip install xhtml2pdf
Окна
python -m venv env
.\env\Scripts\activate
pip install xhtml2pdf
Преобразование HTML-строки в PDF-документ
Мы можем преобразовать строку HTML в документ PDF, используя библиотеку xhtml2pdf. Мы сохраняем полное HTML-содержимое в переменной, а затем передаем эту переменную функции pisa.CreatePDF(html_content, dest,coding). Этот метод предоставляет нам содержимое PDF, в котором гиперссылки, изображения и другие элементы управляются внутри объекта BytesIO, который мы ему передали. Наконец, мы создаем PDF-файл, используя данные, хранящиеся в объекте BytesIO. Подробности смотрите в приведенном ниже фрагменте кода:
Выход
На снимке экрана ниже показан документ PDF, преобразованный из строки HTML:
Преобразование HTML-файла в PDF-документ
Мы также можем преобразовать HTML-файл в PDF, используя библиотеку xhtml2pdf. Мы считываем содержимое HTML-файла в переменную, а затем передаем эту переменную методу pisa.CreatePDF(html_content, dest,coding). После этого мы выполняем те же шаги, что и в предыдущем примере, для создания PDF-документа с использованием объекта BytesIO, как показано в приведенном ниже фрагменте кода:
Выход
На снимке экрана ниже показан документ PDF, преобразованный из файла HTML:
Заключение
Таким образом, xhtml2pdf — это библиотека Python с открытым исходным кодом, которая преобразует HTML в документы PDF, обрабатывая при этом гиперссылки, изображения и внешние таблицы стилей. xhtml2pdf не включает библиотеки внешнего интерфейса при преобразовании HTML в PDF, поэтому, если в HTML есть переменные, такие как {{name}}, они отображаются в PDF точно так, как написано в HTML, вместо того, чтобы показывать их фактические значения.
Кроме того, ему не хватает поддержки динамических страниц, которые зависят от JavaScript для получения контента, и он не следует сложным макетам, заданным CSS (например, он применяет цвета, размеры шрифта и т. д., упомянутые в CSS, но игнорирует CSS макета). такие как отступы, поля, отображение и т. д.). Несмотря на эти ограничения, xhtml2pdf остается ценным инструментом для простого статического преобразования HTML в PDF.