Thư viện Python Miễn phí cho việc Chuyển đổi HTML và CSS sang PDF
Thư viện Python nguồn mở cho phép tạo Tài liệu PDF từ HTML. Nó hỗ trợ bố cục trang nâng cao, hiển thị Hình ảnh & Bảng, Thêm Phông chữ Tùy chỉnh, Tiêu đề/Chân trang và nhiều hơn nữa.
Thư viện XHTML2PDF là gì?
Trong thế giới phát triển web, nhu cầu tạo tài liệu PDF từ nội dung HTML là một yêu cầu phổ biến. Dù là để tạo hoá đơn, báo cáo, hay bất kỳ loại tài liệu có thể in nào, việc có một công cụ đáng tin cậy để xử lý chuyển đổi này là vô cùng quan trọng. Đó là lúc XHTML2PDF, một thư viện Python mã nguồn mở mạnh mẽ, đến cứu trợ. html2pdf (trước đây được gọi là pisa) là một thư viện thuần Python chuyển đổi HTML (bao gồm XHTML) và CSS thành tài liệu PDF. Nó được xây dựng dựa trên bộ công cụ ReportLab và html5lib, với hỗ trợ tùy chọn từ PyPDF. Không phụ thuộc vào nền tảng và dễ tiếp cận, nó cho phép các nhà phát triển nhanh chóng và hiệu quả biến nội dung web của họ thành PDF có thể in được.
XHTML2PDF được trang bị đầy đủ các tính năng khiến nó trở thành công cụ đa năng cho việc tạo PDF. Nó hỗ trợ HTML5 và CSS 2.1, tích hợp liền mạch với Django, giao diện dòng lệnh mạnh mẽ, các thẻ tùy chỉnh dành cho PDF, bố cục và kiểu dáng trang nâng cao, hỗ trợ tốt hơn cho bảng và hình ảnh, v.v. Điều khiến XHTML2PDF hấp dẫn đối với các nhà phát triển là sự đơn giản và linh hoạt của nó. Nếu bạn biết cách viết HTML và CSS, bạn có thể bắt đầu tạo PDF với thư viện này trong thời gian ngắn. Đây là một thư viện Python thuần, có nghĩa là nó độc lập nền tảng và có thể chạy trên bất kỳ hệ điều hành nào hỗ trợ Python. Cũng cần lưu ý giới hạn của thư viện, nó không hỗ trợ toàn bộ đặc tả CSS và không thực thi JavaScript.
Bắt đầu với XHTML2PDF
XHTML2PDF có thể được cài đặt bằng pip, các lệnh sau sẽ cài đặt từ một gói Python wheel nếu có sẵn cho nền tảng của bạn.
Cài đặt XHTML2PDF qua pip
pip install xhtml2pdf Sao chép kho lưu trữ qua GitHub
git clone https://github.com/xhtml2pdf/xhtml2pdf.git Bạn cũng có thể cài đặt thủ công; tải xuống các tệp phát hành mới nhất trực tiếp từ GitHub repository.
Chuyển đổi HTML & CSS sang PDF bằng Python
Chức năng chính của thư viện mã nguồn mở XHTML2PDF là phân tích HTML và CSS (bao gồm cả kiểu nội tuyến) và chuyển chúng một cách chính xác thành tài liệu PDF. Nó hỗ trợ một tập hợp rộng các thẻ HTML và thuộc tính CSS, cho phép linh hoạt trong thiết kế. Nó hỗ trợ các tính năng như ngắt trang, tiêu đề và chân trang, lề và kích thước trang, nhúng phông chữ, v.v. Ví dụ đơn giản sau đây cho thấy cách các nhà phát triển phần mềm có thể chuyển nội dung HTML thành tệp PDF thông qua mã Python.
Cách chuyển đổi nội dung HTML thành tệp PDF bằng Python?
from xhtml2pdf import pisa
# Nội dung HTML cần chuyển đổi
html_content = """
Xin chào, Thế giới!
Đây là tệp PDF đầu tiên của tôi được tạo bằng XHTML2PDF.
"""
# Tên tệp PDF đầu ra
output_filename = "hello_world.pdf"
# Mở tệp đầu ra ở chế độ ghi nhị phân
with open(output_filename, "w+b") as pdf_file:
# Create the PDF
pisa_status = pisa.CreatePDF(
html_content, # the HTML to convert
dest=pdf_file) # file handle to receive result
# Kiểm tra xem việc tạo PDF có thành công hay không
if not pisa_status.err:
print(f"Successfully created PDF: {output_filename}")
else:
print(f"Error creating PDF: {pisa_status.err}")
Hỗ trợ bố cục trang nâng cao & phông chữ tùy chỉnh
Với thư viện XHTML2PDF, các nhà phát triển phần mềm có thể kiểm soát chi tiết bố cục các trang PDF. Họ có thể định nghĩa kích thước trang, lề và hướng sử dụng quy tắc CSS @page. Các nhà phát triển cũng có thể tạo tiêu đề và chân trang tùy chỉnh cho tài liệu của mình. Hơn nữa, nếu bạn cần sử dụng các phông chữ cụ thể trong PDF, thư viện cho phép bạn nhúng phông chữ tùy chỉnh. Điều này đặc biệt hữu ích cho việc xây dựng thương hiệu và đảm bảo kiểu chữ nhất quán trên tất cả các tài liệu.
Kết xuất hình ảnh & bảng PDF qua thư viện Python
Thư viện mã nguồn mở XHTML2PDF cung cấp hỗ trợ mạnh mẽ cho việc hiển thị bảng và hình ảnh trong PDF của bạn. Bạn có thể tạo kiểu cho các bảng bằng CSS, và đối với hình ảnh, bạn có thể kiểm soát kích thước và căn chỉnh của chúng. Thư viện có thể dễ dàng và chính xác giải quyết cũng như nhúng hình ảnh, phông chữ và các tài sản tĩnh khác, điều này rất quan trọng để tạo ra các PDF tự chứa. Bạn có thể tự động tạo mục lục bằng cách chỉ cần thêm thẻ
Hỗ trợ HTML5 và CSS 2.1
Nếu bạn quen thuộc với HTML và CSS, việc tạo lại PDF với kiểu dáng trở nên trực quan—không có đường cong học tập mới. Thư viện XHTML2PDF có hỗ trợ tuyệt vời cho các tiêu chuẩn web hiện đại, bao gồm HTML5 và CSS 2.1, cùng một số hỗ trợ cho các thuộc tính CSS 3. Điều này có nghĩa là bạn có thể sử dụng các thẻ HTML và thuộc tính CSS quen thuộc để cấu trúc và tạo kiểu cho tài liệu PDF của mình, giống như khi bạn làm cho một trang web.