1. Produtos
  2.   PDF
  3.   Python
  4.   XHTML2PDF
 
  

Biblioteca Python Gratuita para Conversão de HTML e CSS em PDF

Biblioteca Python de código aberto que permite gerar documentos PDF a partir de HTML. Ela suporta layout avançado de página, renderização de imagens e tabelas, adição de fontes personalizadas, cabeçalhos/rodapés e assim por diante.

O que é a Biblioteca XHTML2PDF?

No mundo do desenvolvimento web, a necessidade de gerar documentos PDF a partir de conteúdo HTML é uma exigência comum. Seja para criar faturas, relatórios ou qualquer outro tipo de documento imprimível, ter uma ferramenta confiável para lidar com essa conversão é crucial. É aqui que o XHTML2PDF, uma poderosa biblioteca Python de código aberto, entra em ação. O html2pdf (anteriormente conhecido como pisa) é uma biblioteca pura em Python que transforma HTML (incluindo XHTML) e CSS em documentos PDF. Ele é construído sobre o toolkit ReportLab e html5lib, com suporte opcional do PyPDF. Independente de plataforma e acessível, permite que desenvolvedores convertam seu conteúdo web em PDFs imprimíveis de forma rápida e eficaz.

XHTML2PDF vem repleto de recursos que o tornam uma ferramenta versátil para geração de PDFs. Ele oferece suporte a HTML5 e CSS 2.1, integração perfeita com Django, interface de linha de comando poderosa, tags personalizadas específicas para PDF, layout avançado de página e estilização, melhor suporte para tabelas e imagens, entre outros. O que torna o XHTML2PDF tão atraente para desenvolvedores é sua simplicidade e flexibilidade. Se você sabe escrever HTML e CSS, pode começar a gerar PDFs com esta biblioteca em pouco tempo. É uma biblioteca pura em Python, o que significa que é independente de plataforma e pode ser executada em qualquer sistema operacional que suporte Python. Também é importante estar ciente das limitações da biblioteca: ela não suporta toda a especificação CSS e não executa JavaScript.

Previous Next

Começando com XHTML2PDF

XHTML2PDF pode ser instalado usando pip; os comandos a seguir instalarão a partir de um wheel Python, se houver um disponível para sua plataforma.

Instalar XHTML2PDF via pip

 pip install xhtml2pdf 

Clonar repositório via GitHub

 git clone https://github.com/xhtml2pdf/xhtml2pdf.git  

Também é possível instalá-lo manualmente; baixe os arquivos da versão mais recente diretamente do repositório GitHub.

Converter HTML e CSS para PDF via Python

A função principal da biblioteca de código aberto XHTML2PDF é analisar HTML e CSS (incluindo estilos embutidos) e renderizá-los com precisão em um documento PDF. Ela suporta um amplo subconjunto de tags HTML e propriedades CSS, permitindo grande flexibilidade de design. Suporta recursos como quebra de página, cabeçalhos e rodapés, margens e tamanho da página, incorporação de fontes etc. O exemplo simples a seguir mostra como desenvolvedores de software podem converter conteúdo HTML em um arquivo PDF usando código Python.

Como converter conteúdo HTML em um arquivo PDF usando Python?

from xhtml2pdf import pisa

# O conteúdo HTML a ser convertido
html_content = """


Olá, Mundo!

Este é o meu primeiro PDF gerado com XHTML2PDF.

""" # O nome do arquivo PDF de saída output_filename = "hello_world.pdf" # Abrir o arquivo de saída em modo de escrita binária 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 # Verificar se a criação do PDF foi bem-sucedida if not pisa_status.err: print(f"Successfully created PDF: {output_filename}") else: print(f"Error creating PDF: {pisa_status.err}")

Layout avançado de página e suporte a fontes personalizadas

Com a biblioteca XHTML2PDF, desenvolvedores de software têm controle detalhado sobre o layout de suas páginas PDF. Eles podem definir tamanho da página, margens e orientação usando a regra CSS @page. Os desenvolvedores também podem criar cabeçalhos e rodapés personalizados para seus documentos. Além disso, se precisar usar fontes específicas em seus PDFs, a biblioteca permite incorporar fontes personalizadas. Isso é particularmente útil para branding e para garantir tipografia consistente em todos os documentos.

Renderização de imagens e tabelas em PDF via Biblioteca Python

A biblioteca de código aberto XHTML2PDF oferece suporte robusto para renderizar tabelas e imagens em seus PDFs. Você pode estilizar suas tabelas usando CSS e, para imagens, pode controlar seu tamanho e alinhamento. A biblioteca pode resolver e incorporar facilmente imagens, fontes e outros recursos estáticos, o que é fundamental para gerar PDFs autônomos. Você pode gerar automaticamente um índice adicionando simplesmente a tag ao seu HTML.

Suporte a HTML5 e CSS 2.1

Se você está familiarizado com HTML e CSS, recriar PDFs com estilo torna-se intuitivo — sem curva de aprendizado nova. A biblioteca XHTML2PDF tem excelente suporte aos padrões web modernos, incluindo HTML5 e CSS 2.1, com algum suporte para propriedades CSS 3. Isso significa que você pode usar tags HTML familiares e propriedades CSS para estruturar e estilizar seus documentos PDF, assim como faria para uma página da web.

 Português