COMPARACIóN DE PRODUCTOS

Comparación entre IronPDF y XFINIUM.PDF

Actualizado 27 de septiembre, 2022
Compartir:

Una tecnología cada vez mejor significa soluciones más inteligentes para todos, especialmente para los desarrolladores. La automatización es ahora la clave de los procesos de desarrollo de software. Trabajar con archivos PDF en C# ha sido problemático para los desarrolladores durante muchos años. Hay que tener en cuenta muchos factores a la hora de crear contenidos para archivos PDF, y más aún al convertir contenidos de distintos formatos a PDF. Estos problemas se han resuelto ahora con la construcción de múltiples bibliotecas diseñadas para ayudar a leer, escribir, crear y convertir a PDF desde distintos formatos.

En este artículo se compararán dos de las bibliotecas PDF más populares para desarrolladores .NET y .NET Core. Estas dos bibliotecas son:

  • La biblioteca IronPDF
  • La biblioteca XFININIUM.PDF

    IronPDF y XFININUM.PDF son dos bibliotecas que proporcionan métodos para crear, manipular e imprimir PDF en .NET y .NET Core. La siguiente cuestión es decidir qué biblioteca PDF de C# es la mejor para su proyecto .NET. Puede sopesar su decisión leyendo la siguiente comparación entre las dos bibliotecas y sus respectivas características destacadas para la conversión y manipulación de PDF.

    En primer lugar, echemos un vistazo a lo que ofrecen las dos bibliotecas y, a continuación, pasemos a la comparación propiamente dicha.

La biblioteca XFINIUM.PDF y sus funciones

La biblioteca XFINIUM.PDF es una biblioteca multiplataforma para el desarrollo de PDF. Ofrece una amplia variedad de funciones tanto para el aficionado como para el desarrollador de PDF de nivel superior. Tanto si desea crear un informe, rellenar un formulario PDF, construir una cartera PDF, redactar datos delicados de un informe PDF o convertir un informe PDF en una imagen TIFF de varias páginas.

XFINIUM.PDF está disponible en dos ediciones: la Generator Edition, que incluye la producción y edición de PDF, y la Viewer Edition, que contiene toda la funcionalidad de la Generator Edition más la renderización y visualización de PDF. La sección Características explica qué funciones están incluidas en ambas ediciones y cuáles sólo están disponibles en la Edición Visualizador.

XFINIUM.PDF se ha escrito íntegramente en C# y es un código totalmente gestionado. Está licenciado por desarrollador con distribución libre de derechos, lo que le permite distribuir libremente su programa sin incurrir en más costes.

¿Cuál es la diferencia entre las ediciones Generator y Viewer?

La Edición Generador es un subconjunto de la Edición Visualizador. La edición Generator ofrece funciones PDF para crear y editar archivos PDF, mientras que la edición Viewer añade funciones de representación de PDF a la edición Generator. La edición Visor puede convertir páginas PDF en imágenes RAW, BMP, GIF, JPG, PNG y TIFF.

Especificación XFINIUM.PDF

Algunas de las características importantes son:

Seguridad

  • Contraseñas de usuario y propietario
  • Derechos de acceso a los documentos
  • Cifrado RC4 de 40 y 128 bits
  • Cifrado AES de 128 y 256 bits
  • Redacción de contenidos
  • Desactivar copiar/pegar texto

Firmas digitales

  • Homologación y certificación de firmas digitales con certificados X509
  • Firmas digitales básicas CMS y PAdES con SHA256 / SHA384 / SHA512
  • Marcas de tiempo de las firmas
  • Información OCSP y CRL incluida en las firmas digitales
  • Almacén de seguridad de documentos
  • Fechas de documentos
  • LTV (Validación a largo plazo) firmas digitales habilitadas
  • Decodificación de firmas existentes en objetos ASN.1
  • Extraer el certificado de firmas digitales
  • Guardar copias firmadas de documentos PDF

Código de barras

  • Motor de código de barras vectorial integrado, sin imágenes ni fuentes de código de barras
  • Códigos de barras unidimensionales:
    • Códigos de barras genéricos: Codabar, Código 11, Código 25, Código 25 Intercalado, Código 39, Código 39 Extendido, Código 93, Código 93 Extendido, Código 128 A, Código 128 B, Código 128 C, COOP 25, Matrix 25, MSI/Plessey
    • Códigos de barras farmacéuticos: Código 32, Pharmacode, PZN (Pharma-Zentral-Nummer)
  • Códigos de barras bidimensionales:
    • DataMatrix, QR, PDF417, Micro PDF417, Codablock F, Código 16K

Extracción de contenidos

  • Extraer texto con información de posición a nivel de fragmento y de glifo
  • Extraer texto como palabras con información de posición a nivel de palabra y glifo
  • Extraer texto y palabras de regiones definidas por el usuario
  • Extraer imágenes que incluyan información como el tamaño de la imagen en píxeles, los bits por píxel, el espacio de color, la posición de la imagen en la página PDF, el tamaño de la imagen en la página PDF y la resolución horizontal y vertical de la imagen.

API COS de bajo nivel

  • Añadir, editar y eliminar objetos COS
  • Objetos COS compatibles: cadenas, números, nombres, booleanos, nulos, matrices, diccionarios y flujos.

Renderizado de PDF (sólo edición Viewer)

  • Convierta páginas PDF en imágenes: RAW, BMP, GIF, JPG, PNG y TIFF ARGB, RGBA, BGRA, RGB, BGR y diseños de bytes en escala de grises para imágenes RAW
  • PDF a TIFF multipágina (color/escala de grises/B/N CCITT G4)

Principales características de IronPDF

La biblioteca PDF .NET de IronPDF es un sueño hecho realidad para los desarrolladores, especialmente los programadores de C#. Con esta asombrosa herramienta, puede construir fácilmente una biblioteca PDF básica para .NET.

IronPDF convierte páginas HTML en archivos PDF utilizando el motor .NET Chromium. No es necesario utilizar complicadas API para posicionar o diseñar PDF con HTML to PDF. IronPDF admite documentos en línea estándar, incluidos HTML, ASPX, JS, CSS e imágenes.

También puede utilizar HTML5, CSS, JavaScript e imágenes para desarrollar una biblioteca PDF .NET. Un PDF se puede editar, sellar y añadir fácilmente encabezados y pies de página. También facilita la lectura de texto en PDF y la extracción de gráficos.

Descargar IronPDF gratis y empiece a utilizarlo en sus proyectos .NET hoy mismo.

Características destacadas de la biblioteca C# IronPDF

Estas son algunas de sus principales características:

Producción de PDF (HTML a PDF)

  • HTML4/5, CSS y JavaScript pueden utilizarse para crear documentos PDF.
  • Cargar URL con credenciales de inicio de sesión de red personalizadas, agentes de usuario, proxies, cookies, cabeceras HTTP y variables de formulario para permitir el inicio de sesión detrás de formularios de inicio de sesión HTML.

Puede editar documentos PDF existentes sin Adobe Acrobat

  • Los datos de los campos del formulario deben leerse y rellenarse.
  • Extraer gráficos y texto de un PDF.
  • Cualquier página PDF actual puede actualizarse con nuevo contenido HTML.
  • Los encabezados y pies de página deben ser lógicos o HTML.

Los documentos PDF existentes pueden manipularse

  • Los documentos PDF existentes pueden cargarse y analizarse.
  • El contenido de los documentos PDF se puede combinar y separar.
  • Añade encabezados, pies de página, anotaciones, marcadores, marcas de agua, texto y activos de imagen.

Convierte desde distintos formatos de archivo

  • ASPX WebForms: convierta formularios web ASP.NET en PDF imprimibles que pueden visualizarse en el navegador con sólo tres líneas de código.
  • Convierte HTML a PDF en un documento.
  • URL base personalizada que permite acceder a los archivos de activos desde cualquier lugar de Internet.
  • La ventana virtual permite un diseño adaptable (anchura y altura).
  • Acepta archivos HTML codificados en cualquiera de los principales formatos de archivo (por defecto UTF-8).

Imprimir y guardar

  • Se pueden guardar y cargar archivos, datos binarios y MemoryStreams.
  • Un televisor o una pantalla de ordenador Tipos de soportes CSS para imprimir.
  • Imprimir archivos PDF sin Adobe Acrobat convirtiéndolos en un objeto PrintDocument (con un código mínimo).
  • Se pueden exportar los archivos de registro oficiales que contienen información sobre el éxito de la API y los fallos de depuración en el código fuente.

    IronPDF está disponible para casi todos los sistemas operativos y marcos compatibles con C#, incluidos los siguientes:

  • .NET Core 2.1, 3.0, 3.1, .NET 6 y 5
  • Cumplimiento de la norma .NET 2.0 para una compatibilidad universal
  • Azure
  • AWS
  • Docker
  • Linux
  • Windows

Instalación de la biblioteca IronPDF C

Existen cuatro formas de descargar e instalar la biblioteca IronPDF. Son las siguientes:

  1. Uso de Visual Studio
  2. Símbolo del sistema para desarrolladores
  3. Descargue directamente el paquete NuGet
  4. Descargar la biblioteca .DLL de IronPDF

Uso de Visual Studio

Visual Studio proporciona el gestor de paquetes NuGet para instalar paquetes NuGet en sus proyectos. Puede acceder a él a través del menú Proyecto o haciendo clic con el botón derecho del ratón en el Explorador de soluciones. Ambas opciones se muestran a continuación en capturas de pantalla como Figuras 1 y 2.

Acceso al gestor de paquetes NuGet mediante el menú Proyecto de Visual Studio

Figura 1. Acceso al gestor de paquetes NuGet mediante el menú Proyecto de Visual Studio

Acceso al gestor de paquetes NuGet mediante el menú contextual de Visual Studio

Figura 2. Acceso al gestor de paquetes NuGet mediante el menú contextual de Visual Studio

Una vez seleccionado, busque el paquete IronPDF e instálelo, como se muestra en la siguiente captura de pantalla.

Instalación de la biblioteca IronPDF mediante el gestor de paquetes NuGET en Visual Studio

Figura 3. Instalación de la biblioteca IronPDF mediante el gestor de paquetes NuGET en Visual Studio

Uso del símbolo del sistema para desarrolladores

Otra forma de descargar e instalar la librería IronPDF C# es hacer uso de los siguientes pasos para instalar el paquete IronPDF NuGet a través del Símbolo del sistema del desarrollador.

  • Abra el Instructor de comandos para desarrolladores, que normalmente se encuentra en la carpeta Visual Studio.
  • Escribe el siguiente comando:
    :ProductInstall
  • Pulse Intro
  • Esto descargará e instalará el paquete
  • Recarga tu proyecto de Visual Studio y empieza a utilizarlo

Descargue directamente el paquete NuGet

La tercera forma de descargar e instalar IronPDF es seguir los pasos que se indican a continuación. Para ello, visite directamente el sitio de NuGet y descargue el paquete. Los pasos son:

  • Vaya a https://www.nuget.org/packages/IronPdf/
  • Seleccione Descargar paquete
  • Haga doble clic en el paquete descargado
  • El paquete se instalará
  • Recarga tu proyecto de Visual Studio y empieza a utilizarlo

Instale IronPDF descargando la biblioteca

Puede descargar el archivo .DLL de IronPDF directamente de la página sitio web.

Descarga de la biblioteca DLL IronPDF desde el sitio web de IronPDF

Figura 4. Descarga de la biblioteca DLL de IronPDF desde el sitio web de IronPDF

Haz referencia a la biblioteca en tu proyecto siguiendo los siguientes pasos:

  • Haga clic con el botón derecho en la solución en el Explorador de soluciones
  • Seleccionar referencias
  • Buscar la biblioteca IronPDF.dll
  • Haga clic en OK

    Todo hecho! IronPDF está descargado, instalado y listo para usar. Sin embargo, antes debemos instalar la API XFINIUM.PDF.

Instalación de XFINIUM.PDF

En .NET Core, podemos instalar Xfinium PDF como complemento de cake o como herramienta de cake.

//  Instalar Xfinium.Pdf.NetCore como complemento de Cake

#addin nuget:?package=Xfinium.Pdf.NetCore&version=10.2.0
//  Instalar Xfinium.Pdf.NetCore como herramienta Cake

#tool nuget:?package=Xfinium.Pdf.NetCore&version=10.2.0

A continuación, profundicemos en la comparación entre IronPDF y XXFINIUM.PDF.

Creación de un documento PDF sencillo en .NET Core

En el mundo actual, los desarrolladores de software deben saber cómo crear un archivo PDF de forma dinámica utilizando código C#, ya que es necesario en prácticamente todos los proyectos. Es posible que necesite crear un archivo PDF por diversas razones, como generar un informe a partir de datos introducidos por el usuario, guardar texto del usuario como PDF, extraer información HTML y convertirla a PDF, etc.

Ambas bibliotecas incluyen la posibilidad de convertir una página web HTML en PDF. Veamos el código de cada biblioteca una por una.

Uso de IronPDF

IronPDF dispone de varios métodos para crear archivos PDF.

URL existente a PDF

IronPDF simplifica la conversión de HTML en documentos PDF a partir de URL existentes. JavaScript, imágenes, formularios y CSS cuentan con un alto nivel de compatibilidad.

IronPDF se utiliza en el siguiente código para crear un documento PDF directamente desde una dirección web.

IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
using var Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");
Pdf.SaveAs("url.pdf");
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
using var Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");
Pdf.SaveAs("url.pdf");
Dim Renderer As New IronPdf.ChromePdfRenderer()
Dim Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/")
Pdf.SaveAs("url.pdf")
VB   C#

Cadena de entrada HTML a PDF

El siguiente código demuestra cómo se puede utilizar una cadena de entrada HTML para representar una página PDF. Puede utilizar sólo HTML o combinarlo con CSS, imágenes y JavaScript.

var Renderer = new IronPdf.ChromePdfRenderer();
using var PDF = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>");
PDF.SaveAs("pixel-perfect.pdf");
//  Carga activos html externos: imágenes, css y javascript.
//  Una BasePath opcional 'C:\site\assets\' se establece como la ubicación del archivo para cargar los activos de 
using var AdvancedPDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
AdvancedPDF.SaveAs("html-with-assets.pdf");
var Renderer = new IronPdf.ChromePdfRenderer();
using var PDF = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>");
PDF.SaveAs("pixel-perfect.pdf");
//  Carga activos html externos: imágenes, css y javascript.
//  Una BasePath opcional 'C:\site\assets\' se establece como la ubicación del archivo para cargar los activos de 
using var AdvancedPDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
AdvancedPDF.SaveAs("html-with-assets.pdf");
Dim Renderer = New IronPdf.ChromePdfRenderer()
Dim PDF = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>")
PDF.SaveAs("pixel-perfect.pdf")
'  Carga activos html externos: imágenes, css y javascript.
'  Una BasePath opcional 'C:\site\assets\' se establece como la ubicación del archivo para cargar los activos de 
Dim AdvancedPDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets\")
AdvancedPDF.SaveAs("html-with-assets.pdf")
VB   C#

Uso de XFINIUM.PDF

Utilizar XFINIUM.PDF para crear un documento PDF en blanco sólo requiere tres líneas de código: una línea para crear el documento, otra para crear una página y otra para guardar el documento.

PdfFixedDocument document = new PdfFixedDocument();
PdfPage page = document.Pages.Add();
document.Save("empty.pdf");
PdfFixedDocument document = new PdfFixedDocument();
PdfPage page = document.Pages.Add();
document.Save("empty.pdf");
Dim document As New PdfFixedDocument()
Dim page As PdfPage = document.Pages.Add()
document.Save("empty.pdf")
VB   C#

Se necesitan tres líneas de código adicionales para añadir contenido de texto al documento anterior: una para la creación de fuentes para dibujar el texto, otra para la creación de pinceles y para establecer el color del texto, y otra para dibujar realmente el texto y los gráficos en la página.

PdfFixedDocument document = new PdfFixedDocument();
PdfPage page = document.Pages.Add();
//  Cree un tipo de letra estándar con cara Helvetica y tamaño de 24 puntos
PdfStandardFont helvetica = new PdfStandardFont(PdfStandardFontFace.Helvetica, 24);
//  Crea un pincel rojo RGB sólido.
PdfBrush brush = new PdfBrush(PdfRgbColor.Red);
//  Dibuja el texto en la página.
page.Graphics.DrawString("Hello World", helvetica, brush, 100, 100);
document.Save("helloworld.pdf");
PdfFixedDocument document = new PdfFixedDocument();
PdfPage page = document.Pages.Add();
//  Cree un tipo de letra estándar con cara Helvetica y tamaño de 24 puntos
PdfStandardFont helvetica = new PdfStandardFont(PdfStandardFontFace.Helvetica, 24);
//  Crea un pincel rojo RGB sólido.
PdfBrush brush = new PdfBrush(PdfRgbColor.Red);
//  Dibuja el texto en la página.
page.Graphics.DrawString("Hello World", helvetica, brush, 100, 100);
document.Save("helloworld.pdf");
Dim document As New PdfFixedDocument()
Dim page As PdfPage = document.Pages.Add()
'  Cree un tipo de letra estándar con cara Helvetica y tamaño de 24 puntos
Dim helvetica As New PdfStandardFont(PdfStandardFontFace.Helvetica, 24)
'  Crea un pincel rojo RGB sólido.
Dim brush As New PdfBrush(PdfRgbColor.Red)
'  Dibuja el texto en la página.
page.Graphics.DrawString("Hello World", helvetica, brush, 100, 100)
document.Save("helloworld.pdf")
VB   C#

Nuestro modelo de objetos se asemeja mucho al estándar PDF. Esto permite construir fácilmente abstracciones complicadas sobre él, como documentos de flujo.

Rellenar los archivos PDF generados

Uso de XFINIUM.PDF

La biblioteca XFINIUM.PDF puede crear nuevos formularios PDF y rellenar formularios PDF existentes.

Cada tipo de campo de formulario admitido en la especificación PDF está representado por la clase correspondiente:

  • PdfTextBoxField - campos de cuadro de texto
  • PdfCheckBoxField - casillas de verificación
  • PdfRadioButtonField - conjuntos de botones de radio
  • PdfComboboxField - cuadros combinados
  • PdfListboxField - cuadros de lista
  • PdfPushbuttonField - botones pulsadores
  • PdfSignatureField - campos de firma

    El nombre del campo y su ubicación en la página son los únicos datos necesarios para construir un campo de formulario. Después de crear el objeto de campo, debe añadirse a la página antes de poder especificar cualquier otro atributo.

PdfTextBoxField firstNameTextBox = new PdfTextBoxField("firstname");
pdfpage.Fields.Add(firstNameTextBox);
firstNameTextBox.Widgets [0].VisualRectangle = 
    new PdfVisualRectangle(150, 45, 200, 20);
PdfTextBoxField firstNameTextBox = new PdfTextBoxField("firstname");
pdfpage.Fields.Add(firstNameTextBox);
firstNameTextBox.Widgets [0].VisualRectangle = 
    new PdfVisualRectangle(150, 45, 200, 20);
Dim firstNameTextBox As New PdfTextBoxField("firstname")
pdfpage.Fields.Add(firstNameTextBox)
firstNameTextBox.Widgets (0).VisualRectangle = New PdfVisualRectangle(150, 45, 200, 20)
VB   C#

Los formularios PDF existentes pueden rellenarse si se cargan en un objeto PdfFixedDocument. Una vez cargado el formulario, la colección de campos del documento se rellena automáticamente con los campos definidos en el formulario. Un campo se localiza en la colección por su índice o por su nombre, y se rellena estableciendo la propiedad de valor genérica definida en la clase base PdfField o las propiedades de valor específicas definidas en cada tipo de campo.

PdfFixedDocument document = new PdfFixedDocument("form.pdf");
(document.Form.Fields ["firstname"] as PdfTextBoxField).Text = "John";
(document.Form.Fields ["lastname"] as PdfTextBoxField).Value = "Doe";
(document.Form.Fields ["sex"].Widgets [0] as PdfRadioButtonWidget).Checked = true;
(document.Form.Fields ["firstcar"] as PdfComboBoxField).SelectedIndex = 0;
(document.Form.Fields ["secondcar"] as PdfListBoxField).SelectedIndex = 1;
(document.Form.Fields ["agree"] as PdfCheckBoxField).Checked = true;
document.Save("form_filled.pdf");
PdfFixedDocument document = new PdfFixedDocument("form.pdf");
(document.Form.Fields ["firstname"] as PdfTextBoxField).Text = "John";
(document.Form.Fields ["lastname"] as PdfTextBoxField).Value = "Doe";
(document.Form.Fields ["sex"].Widgets [0] as PdfRadioButtonWidget).Checked = true;
(document.Form.Fields ["firstcar"] as PdfComboBoxField).SelectedIndex = 0;
(document.Form.Fields ["secondcar"] as PdfListBoxField).SelectedIndex = 1;
(document.Form.Fields ["agree"] as PdfCheckBoxField).Checked = true;
document.Save("form_filled.pdf");
Dim document As New PdfFixedDocument("form.pdf")
TryCast(document.Form.Fields ("firstname"), PdfTextBoxField).Text = "John"
TryCast(document.Form.Fields ("lastname"), PdfTextBoxField).Value = "Doe"
TryCast(document.Form.Fields ("sex").Widgets (0), PdfRadioButtonWidget).Checked = True
TryCast(document.Form.Fields ("firstcar"), PdfComboBoxField).SelectedIndex = 0
TryCast(document.Form.Fields ("secondcar"), PdfListBoxField).SelectedIndex = 1
TryCast(document.Form.Fields ("agree"), PdfCheckBoxField).Checked = True
document.Save("form_filled.pdf")
VB   C#

Uso de IronPDF

Veamos cómo podemos crear PDF rellenables utilizando la biblioteca IronPDF C#.

//  PM> Install-Package IronPdf
using IronPdf;

//  Paso 1. Crear un PDF con formularios editables a partir de HTML  Creación de un PDF con formularios editables a partir de HTML utilizando etiquetas de formulario y de entrada

var FormHtml = @"
<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>";

IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
Renderer.RenderingOptions.CreatePdfFormsFromHtml = true;
Renderer.RenderHtmlAsPdf(FormHtml).SaveAs("BasicForm.pdf");

//  Paso 2. Lectura y escritura de valores de formularios PDF.
var FormDocument = PdfDocument.FromFile("BasicForm.pdf");

//Fijar y leer el valor del campo "firstname
var FirstNameField =  FormDocument.Form.GetFieldByName("firstname");
FirstNameField.Value = "Minnie";
Console.WriteLine("FirstNameField value: {0}", FirstNameField.Value);

//Establecer y leer el valor del campo "apellido
IronPdf.Forms.FormField LastNameField = FormDocument.Form.GetFieldByName("lastname");
LastNameField.Value = "Mouse";
Console.WriteLine("LastNameField value: {0}", LastNameField.Value);

FormDocument.SaveAs("FilledForm.pdf");
//  PM> Install-Package IronPdf
using IronPdf;

//  Paso 1. Crear un PDF con formularios editables a partir de HTML  Creación de un PDF con formularios editables a partir de HTML utilizando etiquetas de formulario y de entrada

var FormHtml = @"
<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>";

IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
Renderer.RenderingOptions.CreatePdfFormsFromHtml = true;
Renderer.RenderHtmlAsPdf(FormHtml).SaveAs("BasicForm.pdf");

//  Paso 2. Lectura y escritura de valores de formularios PDF.
var FormDocument = PdfDocument.FromFile("BasicForm.pdf");

//Fijar y leer el valor del campo "firstname
var FirstNameField =  FormDocument.Form.GetFieldByName("firstname");
FirstNameField.Value = "Minnie";
Console.WriteLine("FirstNameField value: {0}", FirstNameField.Value);

//Establecer y leer el valor del campo "apellido
IronPdf.Forms.FormField LastNameField = FormDocument.Form.GetFieldByName("lastname");
LastNameField.Value = "Mouse";
Console.WriteLine("LastNameField value: {0}", LastNameField.Value);

FormDocument.SaveAs("FilledForm.pdf");
'  PM> Install-Package IronPdf
Imports IronPdf

'  Paso 1. Crear un PDF con formularios editables a partir de HTML  Creación de un PDF con formularios editables a partir de HTML utilizando etiquetas de formulario y de entrada

Private FormHtml = "
<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>"

Private Renderer As New IronPdf.ChromePdfRenderer()
Renderer.RenderingOptions.CreatePdfFormsFromHtml = True
Renderer.RenderHtmlAsPdf(FormHtml).SaveAs("BasicForm.pdf")

'  Paso 2. Lectura y escritura de valores de formularios PDF.
Dim FormDocument = PdfDocument.FromFile("BasicForm.pdf")

'Fijar y leer el valor del campo "firstname
Dim FirstNameField = FormDocument.Form.GetFieldByName("firstname")
FirstNameField.Value = "Minnie"
Console.WriteLine("FirstNameField value: {0}", FirstNameField.Value)

'Establecer y leer el valor del campo "apellido
Dim LastNameField As IronPdf.Forms.FormField = FormDocument.Form.GetFieldByName("lastname")
LastNameField.Value = "Mouse"
Console.WriteLine("LastNameField value: {0}", LastNameField.Value)

FormDocument.SaveAs("FilledForm.pdf")
VB   C#

Comenzamos creando un formulario con etiquetas de formato HTML en el siguiente código. Después, lo guardamos como documento PDF. Comenzamos a leer y escribir valores de formulario PDF en el Paso #2. Con el nombre del campo, puede llegar al campo del formulario. La función GetFieldByName está disponible en IronPDF. A continuación, se establece el valor del campo seleccionado y se guarda el formulario recién rellenado.

Firma digital de archivos PDF

En la era moderna, muchas personas trabajan a distancia. Rellenar y firmar formularios, enviar archivos y procesar documentos son algunas de las principales actividades que las empresas deben realizar a diario. Una de estas actividades principales es la firma de documentos PDF, carteras PDF y formularios PDF como alternativas a los documentos en papel. Las firmas digitales se han convertido en algo esencial, ya que las empresas buscan formas de firmar acuerdos y contratos, así como de compartir formularios PDF en línea.

Uso de XFINIUM.PDF

Un campo de firma en un archivo PDF se utiliza para aplicar una firma digital (Clase PdfSignatureField). Aunque el campo de firma es un campo de formulario que aparece en una de las páginas del documento, la firma digital se utiliza para firmar todo el documento, no sólo esa página.

El proceso de firma comienza con un objeto PdfDigitalSignature que se utiliza para establecer el atributo de firma de un campo de firma. Dado que la firma se basa en el diseño binario real del archivo PDF, se forma al guardar el documento.

La clase PdfDigitalSignature es la base de todas las firmas digitales XFINIUM.

Hay varias clases de firma entre las que elegir:

  • PdfCmsDigitalSignature - una firma digital basada en el estándar CMS (hereda de PdfDigitalSignature)
  • PdfPadesDigitalSignature - una firma digital que implementa el estándar PADES (hereda de PdfCmsDigitalSignature)
  • PdfInteractiveCmsDigitalSignature - una firma digital basada en estándares CMS que puede utilizar una tarjeta inteligente de firma por hardware para crear la firma digital. (hereda de PdfDigitalSignature)
  • PdfInteractivePadesDigitalSignature - una firma digital que implementa el estándar PADES y que puede utilizar una tarjeta inteligente de firma por hardware para crear la firma digital. (hereda de PdfInteractiveCmsDigitalSignature)
  • PdfDocumentTimeStamp - una marca de tiempo a nivel de documento (hereda de PdfDigitalSignature)

Uso de IronPDF

Los desarrolladores suelen preguntar sobre la utilización de IronPDF y C# para añadir mediante programación una firma a un PDF. Esto puede significar muchas cosas para los desarrolladores:

  • A partir de un archivo de imagen, añada una imagen de firma digital gráfica a los archivos PDF existentes.
  • Confirmar que un PDF no ha sido manipulado firmándolo criptográficamente.
  • Para añadir un icono de firma manuscrita humana a un PDF que ha sido firmado criptográficamente.

    El primer método consiste en estampar una firma PNG en una página PDF ya existente. Puede utilizarse como firma o sello de empresa. Se fomenta la opacidad. Sólo se necesitan unas pocas líneas de código para completar el procedimiento.

//  abrir un documento PDF existente o crear uno nuevo
PdfDocument Pdf = PdfDocument.FromFile(@"C:\Path\To\ASPX to PDF.pdf");
var SignatureStamp = new HtmlStamp() { Html = "<img src='signature.png' />", Width = 150, Height = 50, Bottom = 300, Left=85, ZIndex = HtmlStamp.StampLayer.OnTopOfExistingPDFContent };
Pdf.StampHTML(SignatureStamp,1);
Pdf.SaveAs(@"C:\Path\To\ASPX to PDF.pdf");
//  abrir un documento PDF existente o crear uno nuevo
PdfDocument Pdf = PdfDocument.FromFile(@"C:\Path\To\ASPX to PDF.pdf");
var SignatureStamp = new HtmlStamp() { Html = "<img src='signature.png' />", Width = 150, Height = 50, Bottom = 300, Left=85, ZIndex = HtmlStamp.StampLayer.OnTopOfExistingPDFContent };
Pdf.StampHTML(SignatureStamp,1);
Pdf.SaveAs(@"C:\Path\To\ASPX to PDF.pdf");
'  abrir un documento PDF existente o crear uno nuevo
Dim Pdf As PdfDocument = PdfDocument.FromFile("C:\Path\To\ASPX to PDF.pdf")
Dim SignatureStamp = New HtmlStamp() With {
	.Html = "<img src='signature.png' />",
	.Width = 150,
	.Height = 50,
	.Bottom = 300,
	.Left=85,
	.ZIndex = HtmlStamp.StampLayer.OnTopOfExistingPDFContent
}
Pdf.StampHTML(SignatureStamp,1)
Pdf.SaveAs("C:\Path\To\ASPX to PDF.pdf")
VB   C#

El siguiente código firma criptográficamente un PDF utilizando un certificado digital .pfx y .p12 X509Certificate2 que puede crearse fácilmente con una sola línea de código.

//  123456 representa la contraseña de la firma
new IronPdf.PdfSignature("CertificateFile.p12", "123456").SignPdfFile("ASPX to PDF.pdf");
//  123456 representa la contraseña de la firma
new IronPdf.PdfSignature("CertificateFile.p12", "123456").SignPdfFile("ASPX to PDF.pdf");
'  123456 representa la contraseña de la firma
Call (New IronPdf.PdfSignature("CertificateFile.p12", "123456")).SignPdfFile("ASPX to PDF.pdf")
VB   C#

Este ejemplo más avanzado permite combinar el método de firma de identidad digital .pfx / .p12 X509Certificate2 con el escaneado de una firma manuscrita.

var Signature = new IronPdf.PdfSignature("Iron.pfx", "123456");
PdfDocument doc = Renderer.RenderHtmlAsPdf("<h1>Testing 2048 bit digital security</h1>");
//  Paso 3. Opciones de firma opcionales y gráfico de firma manuscrita
Signature.SigningContact = "support@ironsoftware.com";
Signature.SigningLocation = "Chicago, USA";
Signature.SigningReason = "To show how to sign a PDF";
Signature.LoadSignatureImageFromFile("handwriting.png");
doc.SignPdfWithDigitalSignature(Signature);
doc.SaveAs("ASPX to PDF.pdf");
var Signature = new IronPdf.PdfSignature("Iron.pfx", "123456");
PdfDocument doc = Renderer.RenderHtmlAsPdf("<h1>Testing 2048 bit digital security</h1>");
//  Paso 3. Opciones de firma opcionales y gráfico de firma manuscrita
Signature.SigningContact = "support@ironsoftware.com";
Signature.SigningLocation = "Chicago, USA";
Signature.SigningReason = "To show how to sign a PDF";
Signature.LoadSignatureImageFromFile("handwriting.png");
doc.SignPdfWithDigitalSignature(Signature);
doc.SaveAs("ASPX to PDF.pdf");
Dim Signature = New IronPdf.PdfSignature("Iron.pfx", "123456")
Dim doc As PdfDocument = Renderer.RenderHtmlAsPdf("<h1>Testing 2048 bit digital security</h1>")
'  Paso 3. Opciones de firma opcionales y gráfico de firma manuscrita
Signature.SigningContact = "support@ironsoftware.com"
Signature.SigningLocation = "Chicago, USA"
Signature.SigningReason = "To show how to sign a PDF"
Signature.LoadSignatureImageFromFile("handwriting.png")
doc.SignPdfWithDigitalSignature(Signature)
doc.SaveAs("ASPX to PDF.pdf")
VB   C#

Precios y licencias

Precios y licencias de XFINIUM.PDF

Cada paquete está disponible en dos ediciones: la Generator Edition, que ofrece funciones de producción y edición de PDF, y la Viewer Edition, que contiene todas las funciones de la Generator Edition, además de renderizado y visualización de PDF.

  • Cada desarrollador tiene su propia licencia para la biblioteca Xfinium PDF. Cada desarrollador que produzca código para XFINIUM necesita una licencia para esta biblioteca de archivos PDF.
  • XFINIUM.PDF puede enviarse sin derechos de autor a un número ilimitado de ordenadores de sobremesa y servidores como parte de su licencia.
  • Un año de "Suscripción de asistencia" ofrece un año de actualizaciones gratuitas, así como asistencia técnica.

    Los precios oscilan entre 290,00 y 872,00 dólares al año, en función del paquete respectivo.

Precios y licencias de IronPDF

IronPDF, por su parte, es una biblioteca PDF en C#. Su uso es gratuito para el desarrollo y puede obtenerse una licencia para uso comercial en cualquier momento. Se puede acceder a licencias para un solo proyecto, desarrolladores individuales, agencias y organizaciones multinacionales, así como a la redistribución SaaS y OEM. Todas las licencias incluyen una garantía de devolución del dinero de 30 días, un año de soporte y actualizaciones del software, validez para desarrollo/establecimiento/producción y una licencia perpetua. (compra única). El paquete Lite está disponible por $749. No hay gastos recurrentes con los productos IronPDF.

Conclusión

La biblioteca Iron PDF facilita la creación de documentos PDF porque no depende de API propietarias. "HTML-To-PDF" convierte tipos de documentos de estándar abierto como HTML, JS, CSS, JPG, PNG, GIF y SVG en PDF perfectos en píxeles. En otras palabras, se basa en los talentos que tienen actualmente los desarrolladores. Permite a los usuarios descargar documentos, enviarlos por correo electrónico o guardarlos en la nube, y hacer facturas, presupuestos, informes, contratos y otros trámites. Funciona con ASP.NET, ASP.NET Core, formularios web, MVC, .NET Framework y API web .NET Core.

La biblioteca XFINIUM.PDF tiene una amplia gama de funciones tanto para principiantes como para desarrolladores avanzados de PDF. Tanto si necesita hacer un informe sencillo, rellenar un formulario PDF, construir una cartera PDF, redactar información confidencial de un archivo PDF o convertir un archivo PDF en una imagen TIFF de varias páginas, tiene las herramientas que necesita. Usted tiene un control total sobre los archivos PDF generados porque el modelo de objetos básico se adhiere a la especificación PDF. El código XFINIUM.PDF puede compilarse en todas las plataformas compatibles sin modificaciones. La colección XFINIUM.PDF está a su disposición para ayudarle.

Las licencias de XFINIUM.PDF están disponibles en dos ediciones, Generator y Viewer, que cuestan a partir de 290 y 387 dólares respectivamente. Esto es algo más barato que IronPDF, que tiene una versión ligera a partir de $749. Merece la pena optar por IronPDF porque ofrece licencias individuales y multiusuario, mientras que XFINIUM.PDF sólo ofrece una licencia individual, lo que significa que necesitará una licencia para cada desarrollador. Por otro lado, IronPDF ofrece una licencia profesional a partir de 799 dólares que puede ser utilizada por un número ilimitado de usuarios.

Con IronPDF, puede manipular archivos PDF más fácilmente que con XFINIUM.PDF. IronPDF utiliza menos líneas de código para manipulaciones complicadas, lo que contribuye a aliviar la carga de trabajo del programador.

La empresa Iron Software también ofrece a todos sus clientes la opción de adquirir el conjunto completo de paquetes con sólo dos clics. Esto significa que, por el precio de sólo dos bibliotecas del paquete Iron Software, actualmente puede obtener las cinco bibliotecas, junto con asistencia ininterrumpida para todas ellas.

< ANTERIOR
Comparación entre IronPDF y SautinSoft PDF Focus
SIGUIENTE >
Comparación entre IronPDF y GrapeCity PDF Viewer

¿Listo para empezar? Versión: 2024.7 recién publicada

Descarga gratuita de NuGet Descargas totales: 9,974,197 Ver licencias >
123