Cómo crear archivos PDF en Python

This article was translated from English: Does it need improvement?
Translated
View the article in English

La automatización de la creación de documentos PDF mediante Python permite a los desarrolladores generar PDF como parte de sus aplicaciones. Esta capacidad resulta beneficiosa en varios escenarios, incluida la generación de facturas, informes u otros tipos de PDF según sea necesario.

Esta guía práctica se centra en la utilización de IronPDF para crear archivos PDF mediante programación con scripts de Python.

Biblioteca PDF Python: IronPDF

IronPDF es una potente biblioteca Python diseñada específicamente para crear documentos PDF a partir de HTML. Sus API de fácil uso facilitan la generación y personalización de PDF con diversas funciones, entre las que se incluyen:

  1. Añadir texto, imágenes y otros tipos de contenido

  2. Elegir fuentes, colores y controlar el diseño y el formato de los documentos.

    IronPDF puede integrarse perfectamente en.NET, JavayPython lo que permite una generación versátil de PDF en múltiples plataformas.

    Además de su potente capacidad de generación de PDF, IronPDF ofrece una amplia gama de funciones. Esto incluye la conversión de formatos de archivo, la extracción eficaz de texto y datos de los PDF y la posibilidad de proteger los PDF mediante el cifrado de contraseñas.

Pasos para crear un documento PDF en un script de Python

Requisitos previos

Para utilizar IronPDF python, asegúrese de que el ordenador tiene instalado el siguiente software de requisitos previos:

  1. .NET 6.0 SDK: Para utilizar IronPDF Python, necesita el SDK .NET 6.0 instalado en su máquina, ya que depende de la librería .NET de IronPDF. Descargue el SDK .NET 6.0 de la páginaSitio web oficial de Microsoft.

  2. Python: Descargue e instale la última versión de Python 3.x desde el sitio web oficial de Python: https://www.python.org/downloads/

    Durante el proceso de instalación, asegúrese de seleccionar la opción de añadir Python al PATH del sistema, lo que lo hará accesible desde la línea de comandos.

  3. Pip: Pip suele venir incluido con la instalación de Python a partir de Python 3.4 y posteriores. Sin embargo, dependiendo de su instalación de Python, puede que tenga que comprobar si pip ya está instalado o instalarlo por separado.

  4. Biblioteca IronPDF: La biblioteca IronPDF se puede añadir pip. Utilice el siguiente comando para instalar IronPDF usando pip:
 pip install ironpdf

Atención
En algunos sistemas, Python 2.x puede seguir siendo la versión por defecto. En tales casos, puede que necesite utilizar explícitamente el comando pip3 en lugar de pip para asegurarse de que está utilizando Pip para Python 3.

Pasos importantes antes de escribir código

En primer lugar, añada la siguiente declaración a la parte superior del script Python.

# Import statement for IronPDF Python
from ironpdf import *
PYTHON

A continuación, configure IronPDF con una clave de licencia válida asignando la clave de licencia al atributo LicenseKey de License(antes que cualquier otra línea de código).

# Apply your license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
PYTHON

Atención
Para crear PDF sin marcas de agua, necesitará una clave de licencia válida. Comprar una clave de licencia o obtener una prueba gratuita clave de licencia. De lo contrario, continúe con el siguiente paso para generar nuevos documentos PDF gratis con marcas de agua.

Convertir cadena HTML en documento PDF

Con el método RenderHtmlAsPdf puede generar un nuevo documento PDF a partir de una cadena HTML.

Simplemente proporcione el código HTML como parámetro para el método RenderHtmlAsPdf. IronPDF realizará la conversión, dando como resultado una instancia de documento PDF PdfDocument.

# Instantiate Renderer
renderer = ChromePdfRenderer()

# Create a PDF from a HTML string using Python
pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1><p>This is an example HTML string.</p>")
PYTHON

Una vez que la cadena HTML se ha convertido correctamente en un documento PDF, utilice el método SaveAs para guardar el PDF en una ruta del sistema local:

# Export to a file or Stream
pdf.SaveAs("htmlstring_to_pdf.pdf")
PYTHON

Se creará un archivo PDF llamado "htmlstring_to_pdf.pdf ", conservando el contenido de la cadena HTML original.

Generar PDF a partir de un archivo HTML en Python

Para generar un documento PDF a partir de un archivo HTML almacenado localmente en Python, siga el código que se proporciona a continuación:

# Instantiate Renderer
renderer = ChromePdfRenderer()

# Create a PDF from an existing HTML file using Python
pdf = renderer.RenderHtmlFileAsPdf("example.html")

# Export to a file or Stream
pdf.SaveAs("htmlfile_to_pdf.pdf")
PYTHON

En el fragmento de código anterior, el método RenderHtmlFileAsPdf se utiliza para crear un documento PDF a partir de un archivo HTML. Es necesario proporcionar una cadena o ruta que especifique la ubicación del archivo HTML en el sistema de archivos.

IronPDF renderiza los elementos HTML, incluido cualquier CSS y JavaScript asociado, como lo haría un navegador web. Esto garantiza una representación exacta del contenido en el PDF resultante.

Por último, utilice el método SaveAs para guardar el PDF generado en una ubicación específica de su sistema, de forma similar al ejemplo anterior.

Crear PDF desde URL en Python

Para crear un documento PDF a partir de una página web en Python, utilice el método RenderUrlAsPdf. Simplemente proporcione la URL de la página web deseada como argumento del método, como se ilustra en el siguiente fragmento de código:

# Instantiate Renderer
renderer = ChromePdfRenderer()

# Create a PDF from a URL or local file path
pdf = renderer.RenderUrlAsPdf("https://ironpdf.com")

# Export to a file or Stream
pdf.SaveAs("url.pdf")
PYTHON

Encontrará más información sobre la conversión de páginas Web a PDF en la páginaEjemplo de código de URL a PDF página.

Explorar las opciones de formato PDF

Para personalizar el formato de sus archivos PDF, puede utilizar el atributo RenderingOptions. Esta clase proporciona varios ajustes configurables para lograr el diseño y el aspecto deseados de sus documentos PDF. Algunos de los ajustes que puede modificar son la orientación de la página, el tamaño de la página, el tamaño del margen, etc. Establezca los atributos disponibles en RenderingOptions para generar documentos PDF con la configuración deseada. ConsulteEjemplo de código para más información sobre cómo utilizar las RenderingOptions.

Proteger archivos PDF con contraseñas

Para añadir protección por contraseña a los archivos PDF, puede utilizar el atributo SecuritySettings del objeto PdfDocument. Comience accediendo al atributo SecuritySettings y asigne una contraseña al atributo UserPassword, especificada como cadena.

Por ejemplo, consideremos la protección del documento PDF creado en el ejemplo "URL a PDF":

pdf.SecuritySettings.UserPassword = "sharable"
pdf.SaveAs("protected.pdf")
PYTHON

El archivo PDF se ha protegido con contraseña correctamente. Al intentar abrir el archivo, se mostrará una solicitud de contraseña. Basta con introducir la contraseña correcta para acceder al contenido del archivo PDF.

Más información sobre opciones adicionales de seguridad y metadatosaquí.

Código fuente completo

A continuación se incluye el archivo fuente completo de este tutorial:

# Import statement for IronPDF Python
from ironpdf import *

# Apply your license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"

# Instantiate Renderer
renderer = ChromePdfRenderer()
# Create a PDF from a HTML string using Python
pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1><p>This is an example HTML string.</p>")
# Export to a file or Stream
pdf.SaveAs("htmlstring_to_pdf.pdf")

# Instantiate Renderer
renderer = ChromePdfRenderer()
# Create a PDF from an existing HTML file using Python
pdf = renderer.RenderHtmlFileAsPdf("example.html")
# Export to a file or Stream
pdf.SaveAs("htmlfile_to_pdf.pdf")

# Instantiate Renderer
renderer = ChromePdfRenderer()
# Create a PDF from a URL or local file path
pdf = renderer.RenderUrlAsPdf("https://ironpdf.com")
# Export to a file or Stream
pdf.SaveAs("url.pdf")

pdf.SecuritySettings.UserPassword = "sharable"
pdf.SaveAs("protected.pdf")
PYTHON

IronPDF renderiza con precisión todas las imágenes y textos conservando su formato. Los elementos interactivos, como los botones, se pueden pulsar y los cuadros de texto se pueden editar en el archivo PDF generado.

Resumen

En esta Guía Práctica, exploramos el proceso de creación de PDFs en Python utilizando la librería IronPDF. Con IronPDF, los desarrolladores pueden generar y manipular documentos PDF sin esfuerzo.

La biblioteca ofrece una API fácil de usar que simplifica la creación de PDF a partir de diversas fuentes, como archivos HTML, documentos XML, URL, etc. Tanto si está trabajando en la generación de informes, facturas o cualquier otro tipo de documento, IronPDF proporciona las herramientas necesarias para realizar la tarea de forma eficiente.

IronPDF es una biblioteca comercial y requiere una licencia válida. Tiene unlicencia comercial que parte de $749. Para evaluar sus capacidades en un entorno de producción, puede aprovechar la función prueba gratuita que ofrece IronPDF.

Descargar el producto de software.