Thư viện chuyển đổi HTML sang PDF nguồn mở Python
Hãy thử thư viện Python mã nguồn mở miễn phí này để chuyển đổi tài liệu HTML sang PDF.
Xhtml2pdf là gì?
Xhtml2pdf là một thư viện Python nguồn mở được thiết kế để chuyển đổi nội dung HTML sang tài liệu PDF với trọng tâm chính là giữ nguyên cấu trúc và kiểu dáng ban đầu. Thư viện mạnh mẽ này chuyển đổi liền mạch các trang web thành PDF chuyên nghiệp có thể in.
Bắt đầu với xhtml2pdf
Bạn cần Python phiên bản 3.8.0 trở lên để cài đặt và sử dụng xhtml2pdf. Vì vậy, trước tiên hãy cài đặt Python rồi sử dụng các lệnh bên dưới để cài đặt xhtml2pdf trên máy của bạn bằng pip và môi trường ảo.
Linux
python -m venv env
. env/bin/activate
pip install xhtml2pdf
Hệ điều hành MacOS
python -m venv env
. env/bin/activate
pip install xhtml2pdf
Cửa sổ
python -m venv env
.\env\Scripts\activate
pip install xhtml2pdf
Chuyển đổi chuỗi HTML sang tài liệu PDF
Chúng ta có thể chuyển đổi một chuỗi HTML thành một tài liệu PDF bằng thư viện xhtml2pdf. Chúng ta lưu trữ toàn bộ nội dung HTML trong một biến và sau đó truyền biến đó cho hàm pisa.CreatePDF(html_content, dest, encoding). Phương pháp này cung cấp cho chúng ta nội dung PDF trong đó các siêu liên kết, hình ảnh và các thành phần khác được quản lý trong một đối tượng BytesIO mà chúng ta đã truyền cho nó. Cuối cùng, chúng ta tạo một tệp PDF bằng cách sử dụng dữ liệu được lưu trữ trong đối tượng BytesIO. Kiểm tra đoạn mã bên dưới để biết chi tiết:
Đầu ra
Ảnh chụp màn hình bên dưới hiển thị tài liệu PDF được chuyển đổi từ chuỗi HTML:
Chuyển đổi tệp HTML sang tài liệu PDF
Chúng ta cũng có thể chuyển đổi tệp HTML thành PDF bằng thư viện xhtml2pdf. Chúng ta đọc nội dung tệp HTML vào một biến và sau đó truyền biến đó cho phương thức pisa.CreatePDF(html_content, dest, encoding). Sau đó, chúng ta làm theo các bước tương tự như đã chia sẻ trong ví dụ trước để tạo tài liệu PDF bằng đối tượng BytesIO như được minh họa trong đoạn mã bên dưới:
Đầu ra
Ảnh chụp màn hình bên dưới hiển thị tài liệu PDF được chuyển đổi từ tệp HTML:
Phần kết luận
Tóm lại, xhtml2pdf là một thư viện Python nguồn mở giúp chuyển đổi tài liệu HTML sang PDF trong khi xử lý siêu liên kết, hình ảnh và bảng định kiểu bên ngoài. xhtml2pdf không bao gồm các thư viện giao diện khi chuyển đổi HTML sang PDF, do đó khi có các biến trong HTML như {{name}}, chúng sẽ xuất hiện trong PDF chính xác như được viết trong HTML, thay vì hiển thị giá trị thực của chúng.
Ngoài ra, nó còn thiếu hỗ trợ cho các trang động phụ thuộc vào JavaScript để lấy nội dung và không tuân theo các bố cục phức tạp do CSS chỉ định (ví dụ, nó áp dụng màu sắc, kích thước phông chữ, v.v. được đề cập trong CSS nhưng lại bỏ qua CSS bố cục như phần đệm, lề, hiển thị, v.v.). Bất chấp những hạn chế này, xhtml2pdf vẫn là một công cụ có giá trị cho nhu cầu chuyển đổi HTML sang PDF tĩnh đơn giản.