Biblioteca de conversão de HTML para PDF em Python de código aberto
Experimente esta biblioteca Python gratuita e de código aberto para converter documentos HTML em PDF.
O que é xhtml2pdf?
Xhtml2pdf é uma biblioteca Python de código aberto projetada para converter conteúdo HTML em documentos PDF com foco principal em preservar a estrutura e o estilo originais. Esta biblioteca poderosa converte perfeitamente páginas da web em PDFs profissionais prontos para impressão.
Introdução ao xhtml2pdf
Você precisa do Python versão 3.8.0 ou superior para instalar e usar o xhtml2pdf. Então, primeiro instale o Python e então use os comandos abaixo para instalar o xhtml2pdf na sua máquina usando pip e ambiente virtual.
Linux
python -m venv env
. env/bin/activate
pip install xhtml2pdf
Mac OS
python -m venv env
. env/bin/activate
pip install xhtml2pdf
Windows
python -m venv env
.\env\Scripts\activate
pip install xhtml2pdf
Convertendo string HTML em documento PDF
Podemos converter uma string HTML em um documento PDF usando a biblioteca xhtml2pdf. Armazenamos o conteúdo HTML completo em uma variável e então passamos essa variável para a função pisa.CreatePDF(html_content, dest, encoding). Este método nos fornece o conteúdo PDF em que hiperlinks, imagens e outros elementos são gerenciados dentro de um objeto BytesIO que passamos para ele. Finalmente, criamos um arquivo PDF usando os dados armazenados no objeto BytesIO. Verifique o trecho de código abaixo para obter os detalhes:
Saída
A captura de tela abaixo exibe o documento PDF convertido da string HTML:
Convertendo arquivo HTML em documento PDF
Também podemos converter um arquivo HTML em um PDF usando a biblioteca xhtml2pdf. Lemos o conteúdo do arquivo HTML em uma variável e então passamos essa variável para o método pisa.CreatePDF(html_content, dest, encoding). Depois disso, seguimos os mesmos passos que compartilhamos no exemplo anterior para criar o documento PDF usando o objeto BytesIO, conforme demonstrado no trecho de código abaixo:
Saída
A captura de tela abaixo exibe o documento PDF que foi convertido do arquivo HTML:
Conclusão
Em resumo, xhtml2pdf é uma biblioteca Python de código aberto que converte HTML em documentos PDF enquanto manipula hiperlinks, imagens e folhas de estilo externas. O xhtml2pdf não inclui bibliotecas front-end ao converter HTML em PDF, então quando há variáveis no HTML como {{name}}, elas aparecem no PDF exatamente como escritas no HTML, em vez de mostrar seus valores reais.
Além disso, ele não tem suporte para páginas dinâmicas que dependem de JavaScript para buscar conteúdo, e não segue layouts complexos especificados por CSS (por exemplo, ele aplica as cores, tamanhos de fonte etc. mencionados no CSS, mas ignora o CSS do layout, como preenchimentos, margem, exibição etc.). Apesar dessas restrições, o xhtml2pdf continua sendo uma ferramenta valiosa para necessidades diretas de conversão estática de HTML para PDF.