Bezplatná knihovna Python pro převod HTML a CSS do PDF
Open source knihovna Python umožňuje generovat PDF dokumenty z HTML. Podporuje pokročilé rozvržení stránek, vykreslování obrázků a tabulek, přidávání vlastních fontů, záhlaví/pati a další.
Co je knihovna XHTML2PDF?
Ve světě vývoje webu je potřeba generovat PDF dokumenty z HTML obsahu běžným požadavkem. Ať už jde o vytváření faktur, reportů nebo jakéhokoli jiného typu tisknutelného dokumentu, je klíčové mít spolehlivý nástroj pro tuto konverzi. Zde přichází na pomoc XHTML2PDF, výkonná open-source knihovna pro Python. html2pdf (dříve známý jako pisa) je čistě Pythonová knihovna, která převádí HTML (včetně XHTML) a CSS do PDF dokumentů. Je postavena na nástroji ReportLab a html5lib, s volitelnou podporou od PyPDF. Platformově nezávislá a přístupná, umožňuje vývojářům rychle a efektivně převést jejich webový obsah na tisknutelné PDF.
XHTML2PDF je nabitý funkcemi, které z něj činí všestranný nástroj pro generování PDF. Podporuje HTML5 a CSS 2.1, bezproblémovou integraci s Django, výkonné rozhraní příkazové řádky, vlastní tagy specifické pro PDF, pokročilé rozvržení a stylování stránek, lepší podporu tabulek a obrázků a tak dále. Co dělá XHTML2PDF tak přitažlivým pro vývojáře, je jeho jednoduchost a flexibilita. Pokud umíte psát HTML a CSS, můžete s touto knihovnou během chvilky začít generovat PDF. Jedná se o čistou knihovnu v Pythonu, což znamená, že je platformově nezávislá a může běžet na jakémkoli operačním systému, který podporuje Python. Je také důležité si být vědom omezení knihovny – nepodporuje celou specifikaci CSS a nespouští JavaScript.
Začínáme s XHTML2PDF
XHTML2PDF lze nainstalovat pomocí pip, následující příkazy nainstalují z Python wheel, pokud je pro vaši platformu k dispozici.
Instalace XHTML2PDF pomocí pip
pip install xhtml2pdf Klonovat repozitář přes GitHub
git clone https://github.com/xhtml2pdf/xhtml2pdf.git Je také možné jej nainstalovat ručně; stáhněte nejnovější soubory vydání přímo z úložiště GitHub.
Převod HTML a CSS do PDF pomocí Pythonu
Hlavní funkcí open source knihovny XHTML2PDF je parsovat HTML a CSS (včetně vložených stylů) a přesně je vykreslit do PDF dokumentu. Podporuje širokou podmnožinu HTML značek a CSS vlastností, což umožňuje značnou flexibilitu návrhu. Podporuje funkce jako zalomení stránky, záhlaví a zápatí, okraje a velikost stránky, vkládání fontů a podobně. Následující jednoduchý příklad ukazuje, jak mohou vývojáři softwaru převést HTML obsah do PDF souboru pomocí Python kódu.
Jak převést HTML obsah do PDF souboru pomocí Pythonu?
from xhtml2pdf import pisa
# HTML obsah, který má být převeden
html_content = """
Ahoj, světe!
Toto je můj první PDF vygenerovaný pomocí XHTML2PDF.
"""
# Název výstupního PDF souboru
output_filename = "hello_world.pdf"
# Otevřete výstupní soubor v binárním režimu zápisu
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
# Zkontrolujte, zda bylo vytvoření PDF úspěšné
if not pisa_status.err:
print(f"Successfully created PDF: {output_filename}")
else:
print(f"Error creating PDF: {pisa_status.err}")
Pokročilé rozvržení stránky a podpora vlastních fontů
S knihovnou XHTML2PDF mají vývojáři softwaru detailní kontrolu nad rozvržením svých PDF stránek. Mohou definovat velikost stránky, okraje a orientaci pomocí CSS pravidla @page. Vývojáři mohou také vytvářet vlastní záhlaví a zápatí pro své dokumenty. Navíc, pokud potřebujete ve svých PDF použít konkrétní písma, knihovna umožňuje vkládat vlastní fonty. To je zvláště užitečné pro značkování a zajištění konzistentní typografie ve všech dokumentech.
Vykreslování obrázků a tabulek v PDF pomocí knihovny Python
Otevřená knihovna XHTML2PDF poskytuje robustní podporu pro vykreslování tabulek a obrázků ve vašich PDF. Tabulky můžete stylovat pomocí CSS a u obrázků můžete řídit jejich velikost a zarovnání. Knihovna dokáže snadno a správně řešit i vkládat obrázky, fonty a další statické zdroje, což je klíčové pro generování samostatných PDF. Tabulku obsahu můžete automaticky vytvořit pouhým přidáním značky
Podpora HTML5 a CSS 2.1
Pokud jste obeznámeni s HTML a CSS, vytváření PDF s formátováním se stane intuitivním—žádná nová křivka učení. Knihovna XHTML2PDF má vynikající podporu moderních webových standardů, včetně HTML5 a CSS 2.1, s částečnou podporou vlastností CSS 3. To znamená, že můžete používat známé HTML značky a CSS vlastnosti k strukturování a stylování vašich PDF dokumentů, stejně jako byste to dělali pro webovou stránku.