Бібліотека для перетворення HTML у PDF із відкритим кодом Python
Спробуйте цю безкоштовну бібліотеку Python із відкритим вихідним кодом, щоб конвертувати документи HTML у PDF.
Що таке xhtml2pdf?
Xhtml2pdf — це бібліотека Python з відкритим вихідним кодом, розроблена для перетворення вмісту HTML у документи PDF із головним упором на збереження оригінальної структури та стилю. Ця потужна бібліотека плавно перетворює веб-сторінки на професійні PDF-файли, готові до друку.
Початок роботи з xhtml2pdf
Для встановлення та використання xhtml2pdf вам потрібна версія Python 3.8.0 або новіша. Отже, спочатку встановіть Python, а потім використовуйте наведені нижче команди, щоб установити xhtml2pdf на ваш комп’ютер за допомогою pip і віртуальне середовище.
Linux
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, encoding). Цей метод надає нам PDF-вміст, у якому гіперпосиланнями, зображеннями та іншими елементами керується в об’єкті BytesIO, який ми йому передали. Нарешті, ми створюємо файл PDF, використовуючи дані, що зберігаються в об’єкті BytesIO. Подробиці дивіться у фрагменті коду нижче:
Вихід
На знімку екрана нижче показано PDF-документ, перетворений із рядка HTML:
Перетворення файлу HTML на документ PDF
Ми також можемо конвертувати файл HTML у PDF за допомогою бібліотеки xhtml2pdf. Ми зчитуємо вміст HTML-файлу в змінну, а потім передаємо цю змінну в метод pisa.CreatePDF(html_content, dest, encoding). Після цього ми виконуємо ті самі кроки, що й у попередньому прикладі, щоб створити PDF-документ за допомогою об’єкта BytesIO, як показано у наведеному нижче фрагменті коду:
Вихід
На знімку екрана нижче показано документ PDF, який було перетворено з файлу HTML:
Висновок
Таким чином, xhtml2pdf — це бібліотека Python з відкритим вихідним кодом, яка перетворює документи HTML у PDF, обробляючи гіперпосилання, зображення та зовнішні таблиці стилів. xhtml2pdf не містить інтерфейсних бібліотек під час перетворення HTML у PDF, тому, коли в HTML є змінні, такі як {{name}}, вони відображаються у PDF-файлі точно так, як написано в HTML, замість того, щоб показувати їхні фактичні значення.
Крім того, він не підтримує динамічні сторінки, які залежать від JavaScript для отримання вмісту, і він не дотримується складних макетів, визначених CSS (наприклад, він застосовує кольори, розмір шрифту тощо, згадані в CSS, але ігнорує макет CSS наприклад відступи, поля, дисплей тощо). Незважаючи на ці обмеження, xhtml2pdf залишається цінним інструментом для простого статичного перетворення HTML у PDF.