Cómo rellenar un formulario PDF en Python (Tutorial)

En lugar de rellenar manualmente los campos PDF uno a uno, en este artículo nos centraremos en rellenar PDFs mediante programación. Este enfoque resulta útil cuando la interfaz de usuario de una aplicación mejora la experiencia del usuario, pero los archivos PDF deben generarse electrónicamente con fines de archivo.

Una vez recopilados todos los datos de entrada del usuario, es necesario crear formularios PDF mediante programación. Estos documentos cumplimentados pueden guardarse para su uso futuro o modificarse según sea necesario. Hay varias librerías PDF de Python disponibles para trabajar con PDFs, incluyendo PyPDF2, ReportLab, IronPDF, y más. En este artículo, exploraremos específicamente cómo utilizar IronPDF para rellenar formularios interactivos.

IronPDF - una biblioteca Python

IronPDF es una potente biblioteca PDF diseñada para desarrolladores Python, que les proporciona un enfoque directo para crear, editar y manipular documentos PDF dentro de sus scripts Python.

Los desarrolladores pueden aprovechar el completo conjunto de funciones de IronPDF, que incluye capacidades para manipular texto e imágenes, cifrar documentos e implementar firmas digitales. Utilizando IronPDF, los desarrolladores pueden generar eficazmente documentos PDF de primera calidad, aumentando así el valor y la eficacia de sus proyectos Python.

Instalar IronPDF mediante Pip

La librería IronPDF puede añadirse mediante pip. Utilice el siguiente comando para instalar IronPDF mediante pip:

 pip install ironpdf

Ahora puede utilizar IronPDF con su script Python.

Uso de código Python para rellenar documentos PDF mediante programación

A continuación se muestra un fragmento de código ilustrativo de la utilización de la biblioteca IronPDF para crear y rellenar Formularios PDF utilizando marcado HTML. El código proporcionado importa las clases esenciales de la biblioteca IronPDF.

from ironpdf import *

# Create a PDF with editable forms from HTML using form and input tags
form_html = """
<html>
<body>
<h2>Editable PDF Form</h2>
<form>
First name: <br> <input type='text' name='firstname' value=''> <br>
Last name: <br> <input type='text' name='lastname' value=''>
</form>
</body>
</html>
"""

# Instantiate Renderer
renderer = ChromePdfRenderer()
renderer.RenderingOptions.CreatePdfFormsFromHtml = True
renderer.RenderHtmlAsPdf(form_html).SaveAs("BasicForm.pdf")

# Read and Write PDF form values
form_document = PdfDocument.FromFile("BasicForm.pdf")

# Set and Read the value of the "firstname" field
first_name_field = form_document.Form.GetFieldByName("firstname")
first_name_field.Value = "Minnie"
print("FirstNameField value: {}".format(first_name_field.Value))

# Set and Read the value of the "lastname" field
last_name_field = form_document.Form.GetFieldByName("lastname")
last_name_field.Value = "Mouse"
print("LastNameField value: {}".format(last_name_field.Value))

form_document.SaveAs("FilledForm.pdf")
PYTHON

En primer lugar, generamos un formulario PDF convirtiendo un formulario HTML marcado mediante el método PdfDocument.RenderHtmlAsPdf. El atributo RenderingOptions se utiliza para establecer CreatePdfFormsFromHtml en true, lo que hace que el formulario dentro del marcado HTML sea editable. El PDF resultante se guarda en la ubicación de salida especificada mediante el método SaveAs.

Salida

En segundo lugar, cargamos el PDF creado utilizando el método PdfDocument.FromFile. Utilizando el método GetFieldByName, accedemos a los campos de formulario especificados basándonos en sus respectivos nombres. Para rellenar los campos de entrada firstname y lastname, asignamos valores a sus atributos Value. Por último, el PDF modificado se guarda en un nuevo archivo mediante el método SaveAs.

Salida

Resumen

En conclusión, IronPDF destaca como una biblioteca Python fiable y eficiente para la manipulación de documentos PDF. Con su excepcional capacidad para rellenar formularios PDF mediante programación, se convierte en un activo inestimable para automatizar los flujos de trabajo de procesamiento de documentos.

IronPDF ofrece una versión de prueba gratuita que permite a los usuarios explorar sus funciones antes de comprometerse. Además, ofrece opciones de licencia que son asequibles y flexibles, con paquetes desde $749.