Cómo crear archivos PDF en Python
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.
Cómo crear un archivo PDF en Python
- Instalar la biblioteca de Python para crear archivos PDF
- Utilice el método
RenderHtmlAsPdf
para transformar una cadena HTML en un documento PDF - Utilice el método
RenderHtmlFileAsPdf
para generar un archivo PDF directamente desde un archivo HTML - Aproveche el método
RenderUrlAsPdf
para crear archivos PDF desde URL - Exportar archivos PDF protegidos con contraseña al directorio deseado
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:
-
Añadir texto, imágenes y otros tipos de contenido
-
Elegir fuentes, colores y controlar el diseño y el formato de los documentos.
IronPDF se puede integrar perfectamente en aplicaciones de .NET, Java y Python, permitiendo la 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:
-
.NET 6.0 SDK: Para usar IronPDF Python, necesitas tener el SDK de .NET 6.0 instalado en tu máquina, ya que depende de la biblioteca IronPDF .NET. Descarga el SDK de .NET 6.0 desde el sitio web oficial de Microsoft.
-
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.
-
Pip: Pip generalmente se incluye con la instalación de Python a partir de Python 3.4 en adelante. Sin embargo, dependiendo de su instalación de Python, puede que tenga que comprobar si pip ya está instalado o instalarlo por separado.
- Biblioteca IronPDF: La biblioteca IronPDF se puede añadir con pip. Use el siguiente comando para instalar IronPDF utilizando pip:
pip install ironpdf
[{i:(En algunos sistemas, Python 2.x aún puede ser la versión predeterminada. En tales casos, es posible que necesite usar 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 *
A continuación, configure IronPDF con una clave de licencia válida asignando la clave de licencia al atributo LicenseKey de License (antes de cualquier otra línea de código).
# Apply your license key
License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
Para crear PDF sin ninguna marca de agua, necesitará una clave de licencia válida. Adquirir una clave de licencia o obtener una prueba gratuita de clave de licencia. De lo contrario, continúe al siguiente paso para generar nuevos documentos PDF de forma gratuita con marcas de agua.
Convertir cadena HTML en documento PDF
Use el método RenderHtmlAsPdf
, puede generar un nuevo documento PDF a partir de una cadena HTML.
Simplemente proporcione el marcado HTML como parámetro para el método RenderHtmlAsPdf
. IronPDF realizará la conversión, resultando en 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>")
Una vez que la cadena HTML se haya convertido exitosamente en un documento PDF, use el método SaveAs
para guardar el PDF en una ruta en el sistema local:
# Export to a file or Stream
pdf.SaveAs("htmlstring_to_pdf.pdf")
Se creará un archivo PDF llamado "htmlstring_to_pdf.pdf", preservando 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")
En el fragmento de código anterior, se utiliza el método RenderHtmlFileAsPdf
para crear un documento PDF a partir de un archivo HTML. Debes 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.
Finalmente, use el método SaveAs
para guardar el PDF generado en una ubicación específica en su sistema, similar al ejemplo anterior.
Crear PDF desde URL en Python
Para crear un documento PDF a partir de una página web en Python, utiliza 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")
Más información sobre cómo convertir páginas web a PDF está disponible en la página de Ejemplo de Código de URL a PDF.
Explorar las opciones de formato PDF
Para personalizar el formato de tus archivos PDF, puedes 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. Consulte este Ejemplo de Código para obtener más información sobre cómo usar el RenderingOptions
.
Proteger archivos PDF con contraseñas
Para añadir protección con contraseña a los archivos PDF, puedes utilizar el atributo SecuritySettings
del objeto PdfDocument. Comience accediendo al atributo SecuritySettings y asigne una contraseña al atributo UserPassword, especificado como una cadena de texto.
Por ejemplo, consideremos la protección del documento PDF creado en el ejemplo "URL a PDF":
pdf.SecuritySettings.UserPassword = "sharable"
pdf.SaveAs("protected.pdf")
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.
Lea más información sobre configuraciones adicionales de seguridad y metadatos aquí.
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")
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 una licencia comercial que comienza desde $749. Para evaluar sus capacidades en un entorno de producción, puede aprovechar la prueba gratuita ofrecida por IronPDF.
Descargue el producto de software.