Llenar Formularios PDF Programáticamente en C# (Tutorial de Codificación)
Este tutorial demostrará cómo interactuar con formularios en archivos PDF programáticamente.
Existen múltiples bibliotecas .NET en el mercado que nos permiten rellenar formularios PDF programáticamente en C#. Algunas de ellas son difíciles de entender y algunas necesitan ser compradas.
IronPDF es la mejor biblioteca de .NET Core ya que es fácil de entender y gratuita para el desarrollo. Además de llenar formularios PDF, IronPDF también permite crear nuevos PDFs desde una cadena HTML, archivos HTML y URLs.
Veamos cómo rellenar formularios PDF programáticamente usando C#. En primer lugar, se creará una Aplicación de Consola para la demostración, pero puedes usar cualquier otra según tu necesidad.
Crear un proyecto de Visual Studio
Abra Microsoft Visual Studio. Haz clic en Crear Nuevo Proyecto > Selecciona Aplicación de Consola desde las plantillas > Presiona Siguiente > Nombra tu Proyecto. Presiona Siguiente > Selecciona el Marco de Trabajo. Haz clic en el botón Crear. El proyecto se creará como se muestra a continuación.
una Aplicación de Consola recién creada en Visual Studio
Instalar la biblioteca IronPDF
Como se discutió antes, la biblioteca IronPDF se usará en este tutorial. La razón principal para usar esta biblioteca .NET es que es gratuita para el desarrollo y proporciona todas las características en una sola biblioteca.
Ve a la Consola del Administrador de Paquetes. Escribe el siguiente comando:
Install-Package IronPdf
Este comando instalará la biblioteca IronPDF para nosotros. A continuación, comencemos a codificar.
Leer documentos PDF
El primer paso para completar un formulario PDF es leer el documento PDF. Obviamente, ¿cómo podríamos llenar el formulario sin leerlo primero? El siguiente documento PDF se usará para la demostración. Puedes descargarlo desde el Enlace de Google Drive, o puedes usar tu propio documento.
El archivo PDF de muestra para llenar formulario
El código para leer este archivo es:
using IronPdf;
// Load the PDF document from the file path
PdfDocument doc = PdfDocument.FromFile(@"D:\myPdfForm.pdf");using IronPdf;
// Load the PDF document from the file path
PdfDocument doc = PdfDocument.FromFile(@"D:\myPdfForm.pdf");Imports IronPdf
' Load the PDF document from the file path
Private doc As PdfDocument = PdfDocument.FromFile("D:\myPdfForm.pdf")Pasa la ruta completa del documento PDF dentro del método FromFile. Esto leerá el archivo PDF desde tu sistema local.
Obtener formularios PDF
Escribe la siguiente línea de código para obtener el formulario del documento PDF cargado.
var form = doc.Form;var form = doc.Form;Dim form = doc.FormObtener campos de formulario
Para obtener los campos del formulario para establecer su valor, IronPDF facilita esto accediendo a los campos del formulario usando dos métodos: ya sea por nombre de campo o a través del índice. Discutamos ambos uno por uno.
Obtener campo de formulario por nombre
El siguiente código obtendrá el campo por nombre:
// Retrieve the form field using its name
var field = form.FindFormField("First Name");// Retrieve the form field using its name
var field = form.FindFormField("First Name");' Retrieve the form field using its name
Dim field = form.FindFormField("First Name")El método [FindFormField](https://ironpdf.com/object-reference/api/Iron Software.Forms.IFormFieldCollection.html#IronSoftware_Forms_IFormFieldCollection_FindFormField_SystemString) toma el nombre del campo como argumento. Esto es tolerante a fallos e intentará coincidir errores de caso y nombres de campo parciales.
Obtener campo de formulario por índice
También podemos obtener campos de formulario PDF usando el índice. El índice comienza desde cero. El siguiente código de muestra se usa para obtener campos de formulario por índice.
// Retrieve the form field using its index
var field = form.Fields[0];// Retrieve the form field using its index
var field = form.Fields[0];' Retrieve the form field using its index
Dim field = form.Fields(0)Rellenar formularios PDF
A continuación, combinemos todo el código para completar el formulario PDF.
using IronPdf;
class Program
{
static void Main()
{
// Load the PDF document from the file path
PdfDocument doc = PdfDocument.FromFile(@"D:\myPdfForm.pdf");
// Access the PDF form
var form = doc.Form;
// Fill out the form fields using their index
form.Fields[0].Value = "John";
form.Fields[1].Value = "Smith";
form.Fields[2].Value = "+19159969739";
form.Fields[3].Value = "John@email.com";
form.Fields[4].Value = "Chicago";
// Save the modified PDF document
doc.SaveAs(@"D:\myPdfForm.pdf");
}
}using IronPdf;
class Program
{
static void Main()
{
// Load the PDF document from the file path
PdfDocument doc = PdfDocument.FromFile(@"D:\myPdfForm.pdf");
// Access the PDF form
var form = doc.Form;
// Fill out the form fields using their index
form.Fields[0].Value = "John";
form.Fields[1].Value = "Smith";
form.Fields[2].Value = "+19159969739";
form.Fields[3].Value = "John@email.com";
form.Fields[4].Value = "Chicago";
// Save the modified PDF document
doc.SaveAs(@"D:\myPdfForm.pdf");
}
}Imports IronPdf
Friend Class Program
Shared Sub Main()
' Load the PDF document from the file path
Dim doc As PdfDocument = PdfDocument.FromFile("D:\myPdfForm.pdf")
' Access the PDF form
Dim form = doc.Form
' Fill out the form fields using their index
form.Fields(0).Value = "John"
form.Fields(1).Value = "Smith"
form.Fields(2).Value = "+19159969739"
form.Fields(3).Value = "John@email.com"
form.Fields(4).Value = "Chicago"
' Save the modified PDF document
doc.SaveAs("D:\myPdfForm.pdf")
End Sub
End ClassEl código de muestra anterior llenará los campos del formulario por valores de índice. También puedes hacer lo mismo usando los nombres de campo mencionados anteriormente. Ejecutemos el programa para ver el resultado.
Formulario PDF rellenado
El formulario llenado en el archivo PDF de muestra
Puedes ver que la biblioteca puede llenar el formulario PDF con el código más simple, sin necesidad de lógica compleja. Por esta razón se recomienda IronPDF.
Supongamos que aún no tienes documentos PDF con formularios — no te preocupes, IronPDF proporciona soporte completo para generar formularios PDF. Sigue los pasos a continuación:
Generar un nuevo documento de formulario PDF
Crear un nuevo archivo HTML
Crea un nuevo archivo HTML y pega el siguiente código:
<!DOCTYPE html>
<html>
<body>
<h2>PDF Forms</h2>
<form action="/action_page.php">
<label for="fname">First name:</label><br>
<input type="text" id="fname" name="fname"><br>
<label for="lname">Last name:</label><br>
<input type="text" id="lname" name="lname"><br>
<label for="contact">Contact #:</label><br>
<input type="text" id="contact" name="contact"><br>
<label for="email">Email:</label><br>
<input type="text" id="email" name="email"><br>
<label for="city">City:</label><br>
<input type="text" id="city" name="city"><br>
</form>
</body>
</html><!DOCTYPE html>
<html>
<body>
<h2>PDF Forms</h2>
<form action="/action_page.php">
<label for="fname">First name:</label><br>
<input type="text" id="fname" name="fname"><br>
<label for="lname">Last name:</label><br>
<input type="text" id="lname" name="lname"><br>
<label for="contact">Contact #:</label><br>
<input type="text" id="contact" name="contact"><br>
<label for="email">Email:</label><br>
<input type="text" id="email" name="email"><br>
<label for="city">City:</label><br>
<input type="text" id="city" name="city"><br>
</form>
</body>
</html>Guarda este archivo HTML de ejemplo. Puedes personalizar este HTML según tus necesidades de formulario.
A continuación, escribe el siguiente código en tu Programa C#.
using IronPdf;
class Program
{
static void Main()
{
// Create an instance of ChromePdfRenderer
var renderer = new ChromePdfRenderer();
// Render the HTML file as a PDF
var pdfDocument = renderer.RenderHtmlFileAsPdf(@"D:\myForm.html");
// Save the PDF document to the specified file path
pdfDocument.SaveAs(@"D:\myForm.pdf");
}
}using IronPdf;
class Program
{
static void Main()
{
// Create an instance of ChromePdfRenderer
var renderer = new ChromePdfRenderer();
// Render the HTML file as a PDF
var pdfDocument = renderer.RenderHtmlFileAsPdf(@"D:\myForm.html");
// Save the PDF document to the specified file path
pdfDocument.SaveAs(@"D:\myForm.pdf");
}
}Imports IronPdf
Friend Class Program
Shared Sub Main()
' Create an instance of ChromePdfRenderer
Dim renderer = New ChromePdfRenderer()
' Render the HTML file as a PDF
Dim pdfDocument = renderer.RenderHtmlFileAsPdf("D:\myForm.html")
' Save the PDF document to the specified file path
pdfDocument.SaveAs("D:\myForm.pdf")
End Sub
End ClassEjecuta el programa para ver el documento de formularios PDF resultante.
El formulario PDF que generó desde un archivo HTML
Resumen
Es importante completar automáticamente y programáticamente formularios PDF. En este artículo, se sugiere el enfoque más fácil para llenar formularios PDF en C# usando IronPDF. Además, también aprendiste cómo generar nuevos formularios PDF desde cero.
Además, IronPDF también ofrece a los desarrolladores métodos para extraer texto y contenido de un PDF, renderizar gráficos en PDFs, insertar códigos de barras, mejorar la seguridad con contraseñas y poner marcas de agua programáticamente.
Hay muchas otras bibliotecas útiles como IronBarcode para trabajar con códigos de barras, IronXL para trabajar con documentos de Excel, e IronOCR para trabajar con OCR. Puedes obtener las cinco bibliotecas por el precio de solo dos comprando la suite completa Iron Suite. Por favor visita la Página de Licencias de Iron Software para más detalles.
Preguntas Frecuentes
¿Cómo puedo rellenar formularios PDF de forma programática utilizando C#?
IronPDF te permite rellenar formularios PDF programáticamente en C# cargando el documento con PdfDocument.FromFile y accediendo a los campos del formulario usando doc.Form.Fields para establecer sus valores.
¿Qué pasos están involucrados en la configuración de un proyecto C# para rellenar formularios PDF?
Primero, crea una Aplicación de Consola en Visual Studio. Luego, instala IronPDF usando la Consola del Administrador de Paquetes con Install-Package IronPdf. Carga tu PDF usando PdfDocument.FromFile y manipula los campos del formulario según sea necesario.
¿Puede utilizarse IronPDF para generar nuevos formularios PDF desde HTML en C#?
Sí, IronPDF puede generar nuevos formularios PDF al renderizar formularios HTML en documentos PDF utilizando la clase ChromePdfRenderer. Esto permite una generación dinámica de PDFs basada en entradas de formularios web.
¿Cuáles son las principales ventajas de usar IronPDF para el manejo de formularios PDF en aplicaciones .NET?
IronPDF ofrece un enfoque fácil de usar para integrar el manejo de formularios PDF en aplicaciones .NET. Soporta el llenado de formularios, extracción de texto y seguridad documental, con integración sencilla y capacidades de desarrollo gratuitas.
¿Cómo puedo extraer texto de un formulario PDF usando IronPDF?
IronPDF proporciona métodos para la extracción de texto de formularios PDF. Después de cargar el documento con PdfDocument.FromFile, puedes acceder y extraer el contenido de texto usando métodos como pdfDocument.ExtractAllText().
¿Es posible asegurar la seguridad de los documentos PDF usando una biblioteca .NET?
Sí, IronPDF ofrece características para mejorar la seguridad de los PDF, incluyendo firmas digitales, redacción y cifrado para proteger información sensible en tus documentos PDF.
¿Qué pasos de resolución de problemas puedo tomar si los campos de mi formulario PDF no se están actualizando como se espera?
Asegúrate de que los campos del formulario están correctamente identificados y accesados usando IronPDF. Verifica los nombres de los campos o índices y usa doc.Form.FindFormField('FieldName').Value = 'Nuevo Valor' para actualizar los valores de los campos.
¿Cómo guardo un documento PDF modificado después de llenar los campos del formulario en C#?
Después de modificar los campos del formulario usando IronPDF, guarda el documento actualizado con pdfDocument.SaveAs('path/to/newfile.pdf') para conservar los cambios.
¿Puede IronPDF manejar otras operaciones de documentos además del manejo de formularios PDF?
Sí, IronPDF es versátil y puede manejar varias operaciones de PDF, incluyendo extracción de texto, renderizado de gráficos y mejoras de seguridad documental, lo que lo hace una herramienta integral para la gestión de PDFs.
¿Cómo puede ser beneficioso IronPDF para los desarrolladores que trabajan con formularios PDF?
IronPDF proporciona una API sencilla para llenar y manipular formularios PDF, aumentando la productividad de los desarrolladores al ofrecer características como renderizado de HTML a PDF e integración con aplicaciones .NET.
¿IronPDF es compatible con .NET 10 y qué significa eso para completar formularios PDF en C# usando IronPDF?
Sí, IronPDF es compatible con versiones modernas de .NET, incluyendo .NET 8 y .NET 9, y ya es compatible con la próxima versión de .NET 10 (prevista para noviembre de 2025). Esto significa que puede seguir usando IronPDF para rellenar formularios y manipular PDF en C# con total compatibilidad con .NET 10.






