Pruebas en un entorno real
Pruebe en producción sin marcas de agua.
Funciona donde lo necesites.
Manipular PDF utilizando un lenguaje de programación es bastante difícil para los desarrolladores, especialmente en una plataforma .NET. En este artículo, hablaremos de cómo puede gestionar archivos PDF en C#.NET utilizando varias herramientas que le ayudarán a ahorrar mucho tiempo productivo y energía. Hay varios elementos a tener en cuenta a la hora de mostrar material de archivos PDF, y mucho más cuando se transfieren contenidos de otros formatos a PDF. Las herramientas que analizaremos son productos de primera línea utilizados en el sector por desarrolladores y empresas u organizaciones de la lista Fortune 500. Las herramientas .NET que le proporcionarán soluciones a sus problemas de PDF en un instante son:
IronPDF es la solución ideal para convertir sitios web HTML en desarrollo .NET y .NET core. Además, hace mucho más que convertir HTML, ya que ofrece una amplia variedad de funciones adicionales. IronPDF permite a los desarrolladores crear, modificar y extraer documentos PDF dentro de proyectos .NET Core y framework. Con el paquete IronPDF, los desarrolladores pueden generar o convertir fácilmente archivos PDF a partir de páginas HTML.
IronPDF es una biblioteca .NET que permite crear, leer y manipular rápidamente archivos PDF utilizando sólo unas pocas líneas de código. Puede importar, mover e indexar contenidos desde el almacenamiento de documentos PDF existente a sus aplicaciones de gestión de contenidos y rendimiento.
Ahora los usuarios pueden crear imágenes a partir de PDF, así como PDF a partir de fotografías. Incluye extracción de imágenes, compatibilidad con varias extensiones de imagen e impresión de PDF.
IronPDF también puede cifrar PDF con cifrado de 128 bits, proteger PDF con contraseña y firmar digitalmente PDF.
Esta funcionalidad le permite crear PDF a partir de diversas fuentes, como HTML, formularios web, cadenas HTML, vistas MVC y URL.
Esta herramienta de IronPDF le permite dar formato a los PDF de diversas formas, como añadir marcas de agua, añadir páginas, eliminar páginas, cambiar fondos y primeros planos, y mucho más. IronPDF, en pocas palabras, hace todo lo que puedas imaginar hacer con los PDF.
A menudo, el texto incrustado en los PDF puede extraerse fácilmente. Sin embargo, si esto no funciona, puede deberse a que el texto está "atrapado" dentro de una imagen. Para escanear documentos en busca de texto visual en lugar de texto plano, utilice la biblioteca IronOCR.
Al crear un PDF o añadirlo a un PDF existente, se pueden incluir encabezados y pies de página. Puede crear un encabezado y un pie de página para cada página del documento utilizando la propiedad Opciones de impresión. Estos parámetros están disponibles en el objeto Chrome PDF Renderer. Este ejemplo se ejecuta en una aplicación de consola .NET Core.
IronPDF es compatible con casi todos los sistemas operativos y marcos de trabajo compatibles con C#, como:
PSPDFKit Library para .NET es un kit de desarrollo de software(SDK) para editar, rellenar formularios, redactar y producir PDF. Proporciona una sólida API para añadir rápidamente funciones PDF a cualquier aplicación .NET.
PSPDFKit es una de las herramientas multiplataforma más populares para añadir compatibilidad PDF a su aplicación o sitio web. Para su uso en producción, los SDK de PSPDFKit requieren una licencia comercial. Una de las principales ventajas de la API PSPDFKit es que permite integrar diversos métodos de manipulación de documentos en el flujo de trabajo de producción de PDF, como:
PSPDFKit es compatible con las herramientas de anotación más populares:
La biblioteca .NET PSPDFKit admite tanto la lectura como la escritura de archivos XFDF. Para realizar estas tareas se pueden utilizar los métodos ImportXfdf y ExportXfdf de la clase Document.
La biblioteca PSPDFKit .NET facilita la conversión de un PDF en una imagen. Para garantizar la compatibilidad y la eficacia, PSPDFKit utiliza funciones nativas estándar de .NET.
El Editor de Documentos puede utilizarse para combinar varios documentos en un único documento unificado.
Elimina la información sensible, confidencial o privilegiada eliminando permanentemente la información personal de los documentos PDF, en línea con el GDPR y otras normas de privacidad.
Las anotaciones y los marcadores se almacenan en un archivo JSON independiente utilizando Instant JSON. Esto implica que un archivo PDF sólo tendrá que transmitirse una vez, y que cualquier modificación se colocará como una superposición al PDF original.
En este artículo, utilizaremos una nueva aplicación de consola para generar documentos PDF.
Abra el software Visual Studio y vaya al menú Archivo. Seleccione "nuevo proyecto" y, a continuación, seleccione aplicación de consola.
Introduzca el nombre del proyecto y seleccione la ruta en el cuadro de texto correspondiente. A continuación, haga clic en el botón Crear. Seleccione el .NET Framework necesario, como en la siguiente captura de pantalla:
El proyecto de Visual Studio generará ahora la estructura para la aplicación seleccionada.
En la siguiente sección, añadiremos las bibliotecas IronPDF y PSPDFKit al proyecto.
La biblioteca IronPDF puede descargarse e instalarse de cuatro formas diferentes. Estos son:
El software Visual Studio proporciona la opción NuGet Package Manager para instalar el paquete directamente en la solución. La siguiente captura de pantalla muestra cómo abrir el Gestor de paquetes NuGet.
Una vez abierta la interfaz gráfica de usuario del gestor de paquetes, busque la palabra clave "IronPDF" en la sección Examinar, como se muestra en la siguiente captura de pantalla:
Debemos seleccionar la opción IronPDF en los resultados de la búsqueda e instalar el paquete.
Install-Package IronPdf
El paquete IronPDF se instalará ahora en el proyecto actual.
La tercera forma consiste en descargar el paquete NuGet directamente de la página webPágina web de la galería NuGet de IronPDF.
Visite elPágina de descarga de IronPDF para descargar el último paquete directamente del sitio web. Tras la descarga, siga los pasos que se indican a continuación para añadir el paquete al proyecto.
Hay cuatro formas de obtener e instalar la biblioteca PSPDFKit. Son las siguientes:
Los desarrolladores pueden integrar PSPDFKit fácilmente mediante el gestor de paquetes NuGet. A continuación encontrará un ejemplo de cómo hacerlo.
Tras hacer clic en NuGet Package Manager en herramientas, aparecerá una nueva ventana con la barra de búsqueda. Buscar PSPDFKit. Aparecerá una lista.
En la imagen anterior, podemos ver la lista de los paquetes relacionados a partir de la búsqueda. A continuación, seleccione la opción PSPDFKit deseada e instale el paquete.
En el menú de Visual Studio, ve a Herramientas > Gestor de paquetes NuGet > Consola del gestor de paquetes.
Install-Package PSPDFKit.NET -Version 1.4.1
El paquete se instalará ahora en el proyecto actual.
La tercera forma consiste en descargar el paquete NuGet directamente de la página webPágina de la galería NuGet de PSPDFKit.
En lugar de descargar el paquete localmente medianteNuGetpuede utilizar un archivo de configuración para hacer referencia al paquete en una ubicación específica. Esto es útil en los casos en los que tiene máquinas que comparten recursos en una red.
nuget.config
en el mismo directorio que su aplicación .NET.<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<add key="PSPDFKitSource" value="path\to\directoryContainingNupkg" />
</packageSources>
</configuration>
Puede que sea necesario adjuntar la documentación necesaria a un archivo PDF. En este tema, hablaremos de cómo unir dos o más PDF utilizando ambas plataformas .NET.
La clase IronPdf.PdfDocument.Merge
de IronPDF facilita la combinación de dos o más documentos PDF en C#.NET mediante un código sencillo y fácil de entender.
using IronPdf;
var html_a = @"<p> [PDF_A] </p>
<p> [PDF_A] 1st Page </p>
<div style = 'page-break-after: always;' ></div>
<p> [PDF_A] 2nd Page</p>";
var Renderer = new IronPdf.ChromePdfRenderer();
using var pdfdoc_a = Renderer.RenderHtmlAsPdf(html_a);
using var pdfdoc_b = Renderer.RenderHtmlAsPdf(html_b);
using var merged = IronPdf.PdfDocument.Merge(pdfdoc_a, pdfdoc_b);
merged.SaveAs("Merged.pdf");
using IronPdf;
var html_a = @"<p> [PDF_A] </p>
<p> [PDF_A] 1st Page </p>
<div style = 'page-break-after: always;' ></div>
<p> [PDF_A] 2nd Page</p>";
var Renderer = new IronPdf.ChromePdfRenderer();
using var pdfdoc_a = Renderer.RenderHtmlAsPdf(html_a);
using var pdfdoc_b = Renderer.RenderHtmlAsPdf(html_b);
using var merged = IronPdf.PdfDocument.Merge(pdfdoc_a, pdfdoc_b);
merged.SaveAs("Merged.pdf");
Imports IronPdf
Private html_a = "<p> [PDF_A] </p>
<p> [PDF_A] 1st Page </p>
<div style = 'page-break-after: always;' ></div>
<p> [PDF_A] 2nd Page</p>"
Private Renderer = New IronPdf.ChromePdfRenderer()
Private pdfdoc_a = Renderer.RenderHtmlAsPdf(html_a)
Private pdfdoc_b = Renderer.RenderHtmlAsPdf(html_b)
Private merged = IronPdf.PdfDocument.Merge(pdfdoc_a, pdfdoc_b)
merged.SaveAs("Merged.pdf")
El código adjunto demuestra cómo utilizar el editor de documentos PSPDFKit para fusionar dos o más PDF.
using PSPDFKit;
using PSPDFKit.Providers;
namespace PdfEditing
{
public sealed class Program
{
public static void Main(string [] args)
{
var documentEditor = new DocumentEditor();
documentEditor.ImportDocument(0, DocumentEditor.IndexPosition.BeforeIndex, new FileDataProvider("Assets/dog.pdf"));
documentEditor.ImportDocument(0, DocumentEditor.IndexPosition.BeforeIndex, new FileDataProvider("Assets/cat.pdf"));
documentEditor.SaveDocument(new FileDataProvider("dogCatPair.pdf"));
}
}
}
using PSPDFKit;
using PSPDFKit.Providers;
namespace PdfEditing
{
public sealed class Program
{
public static void Main(string [] args)
{
var documentEditor = new DocumentEditor();
documentEditor.ImportDocument(0, DocumentEditor.IndexPosition.BeforeIndex, new FileDataProvider("Assets/dog.pdf"));
documentEditor.ImportDocument(0, DocumentEditor.IndexPosition.BeforeIndex, new FileDataProvider("Assets/cat.pdf"));
documentEditor.SaveDocument(new FileDataProvider("dogCatPair.pdf"));
}
}
}
Imports PSPDFKit
Imports PSPDFKit.Providers
Namespace PdfEditing
Public NotInheritable Class Program
Public Shared Sub Main(ByVal args() As String)
Dim documentEditor As New DocumentEditor()
documentEditor.ImportDocument(0, DocumentEditor.IndexPosition.BeforeIndex, New FileDataProvider("Assets/dog.pdf"))
documentEditor.ImportDocument(0, DocumentEditor.IndexPosition.BeforeIndex, New FileDataProvider("Assets/cat.pdf"))
documentEditor.SaveDocument(New FileDataProvider("dogCatPair.pdf"))
End Sub
End Class
End Namespace
Una anotación es un comentario u observación que se añade a un texto para explicar o criticar un aspecto concreto del mismo. En este tema, vamos a discutir cómo agregar anotaciones en archivos PDF utilizando .NET.
Las anotaciones en PDF permiten añadir comentarios tipo "nota adhesiva" a los documentos PDF. El método IronPdf.PdfDocument.AddTextAnnotation
y la clase PdfDocument.TextAnnotation
permiten añadir anotaciones mediante programación. Coloración, tamaño, opacidad, iconos y edición son algunas de las opciones avanzadas de anotación de texto que se ofrecen.
// PM> Install-Package IronPdf
using IronPdf;
using PdfDocument Pdf = PdfDocument.FromFile("existing.pdf");
var Annotation = new IronPdf.Annotations.TextAnnotation()
{
Title = "This is the major title",
Subject = "This is a subtitle",
Contents = "This is the long 'sticky note' comment content...",
Icon = IronPdf.Annotations.TextAnnotation.AnnotationIcon.Help,
Opacity = 0.9,
Printable = false,
Hidden = false,
OpenByDefault = true,
ReadOnly = false,
Rotateable = true
};
Pdf.AddTextAnnotation(Annotation, 1, 150, 250);
Pdf.SaveAs("existing.pdf");
// PM> Install-Package IronPdf
using IronPdf;
using PdfDocument Pdf = PdfDocument.FromFile("existing.pdf");
var Annotation = new IronPdf.Annotations.TextAnnotation()
{
Title = "This is the major title",
Subject = "This is a subtitle",
Contents = "This is the long 'sticky note' comment content...",
Icon = IronPdf.Annotations.TextAnnotation.AnnotationIcon.Help,
Opacity = 0.9,
Printable = false,
Hidden = false,
OpenByDefault = true,
ReadOnly = false,
Rotateable = true
};
Pdf.AddTextAnnotation(Annotation, 1, 150, 250);
Pdf.SaveAs("existing.pdf");
' PM> Install-Package IronPdf
Imports IronPdf
Private PdfDocument As using
Private Annotation = New IronPdf.Annotations.TextAnnotation() With {
.Title = "This is the major title",
.Subject = "This is a subtitle",
.Contents = "This is the long 'sticky note' comment content...",
.Icon = IronPdf.Annotations.TextAnnotation.AnnotationIcon.Help,
.Opacity = 0.9,
.Printable = False,
.Hidden = False,
.OpenByDefault = True,
.ReadOnly = False,
.Rotateable = True
}
Pdf.AddTextAnnotation(Annotation, 1, 150, 250)
Pdf.SaveAs("existing.pdf")
Para describir las anotaciones PDF, PSPDFKit para .NET proporciona una API basada en JSON. Esto te da mucha libertad a la hora de tratar con anotaciones, ya que puedes tener anotaciones hechas a mano en tu código o en un archivo JSON que importas según necesites.
using Newtonsoft.Json.Linq;
using PSPDFKit;
using PSPDFKit.Providers;
namespace Annotations
{
public sealed class Program
{
public static void Main(string [] args)
{
var Provider = new FileDataProvider("document.pdf");
var documentpdf = new Document(Provider);
var aProvider = document.GetAnnotationProvider();
var textAnJson = new JObject
{
{ "text", "Hello from PSPDFKit" },
{ "bbox", new JArray(10, 10, 400, 400) },
{ "creatorName", "Will" },
{ "type", "pspdfkit/text" },
{ "updatedAt", "2021-01-01T00:00:00Z" },
{ "v", 1 }
};
annotationProvider.AddAnnotationJson(textAnJson);
document.Save(new DocumentSaveOptions())
}
}
}
using Newtonsoft.Json.Linq;
using PSPDFKit;
using PSPDFKit.Providers;
namespace Annotations
{
public sealed class Program
{
public static void Main(string [] args)
{
var Provider = new FileDataProvider("document.pdf");
var documentpdf = new Document(Provider);
var aProvider = document.GetAnnotationProvider();
var textAnJson = new JObject
{
{ "text", "Hello from PSPDFKit" },
{ "bbox", new JArray(10, 10, 400, 400) },
{ "creatorName", "Will" },
{ "type", "pspdfkit/text" },
{ "updatedAt", "2021-01-01T00:00:00Z" },
{ "v", 1 }
};
annotationProvider.AddAnnotationJson(textAnJson);
document.Save(new DocumentSaveOptions())
}
}
}
Imports Newtonsoft.Json.Linq
Imports PSPDFKit
Imports PSPDFKit.Providers
Namespace Annotations
Public NotInheritable Class Program
Public Shared Sub Main(ByVal args() As String)
Dim Provider = New FileDataProvider("document.pdf")
Dim documentpdf = New Document(Provider)
Dim aProvider = document.GetAnnotationProvider()
Dim textAnJson = New JObject From {
{ "text", "Hello from PSPDFKit" },
{ "bbox", New JArray(10, 10, 400, 400) },
{ "creatorName", "Will" },
{ "type", "pspdfkit/text" },
{ "updatedAt", "2021-01-01T00:00:00Z" },
{ "v", 1 }
}
annotationProvider.AddAnnotationJson(textAnJson)
document.Save(New DocumentSaveOptions())
End Sub
End Class
End Namespace
IronPDF ofrece una licencia gratuita para desarrolladores. IronPDF también ofrece una estructura de precios única: el paquete básico comienza en $749 sin costes adicionales. También es posible redistribuir productos 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 el desarrollo, la puesta en marcha y la producción, y una licencia perpetua.(compra única). Más información sobre las licencias de IronPDF para explorar las licencias disponibles y las estructuras de precios de IronPDF.
PSPDFKit ofrece cinco tipos de licencias para los flujos de trabajo de productividad que ha desarrollado. Tiene una licencia gratuita para hasta 100 documentos al mes; para todo lo que supere esa cifra, deberá adquirir uno de los siguientes paquetes:
**Paquete empresarial(más de 10.000 documentos al mes, póngase en contacto con la empresa para obtener un presupuesto)
EstePágina de precios de PSPDFKit detalla la estructura de precios completa de PSPDFKit.
IronPDF no convierte HTML a PDF desde un servidor remoto. En su lugar, inicia una instancia de un navegador real compatible con los estándares entre bastidores(sin necesidad de instalar software adicional). El HTML se presenta en un formato vectorial adecuado para la impresión comercial con los más altos estándares. Como consecuencia, obtendrá un PDF nítido y de alta calidad. Sitio web de IronPDF proporciona información sobre licencias y precios.
PSPDFKit es un SDK para PDF con todas las funciones y compatible con todas las plataformas, incluidos PC, MAC, Android Apps e IOS. Ayuda a transitar, anotar, firmar, rellenar, convertir y editar archivos PDF. PSPDFKit es la solución multiplataforma más utilizada para integrar soporte PDF en tu app o sitio web.
Tanto IronPDF como PSPDFKit requieren licencias comerciales para su uso en producción. IronPDF ofrece una licencia vitalicia, mientras que PSPDFKit ofrece paquetes mensuales y anuales. Las licencias de IronPDF están centradas en el desarrollador. Su modelo de precios se estructura en función del número de desarrolladores que utilicen el producto y sus lugares de trabajo. Las licencias de PSPDFKit se centran en los documentos y se estructuran en función del número de documentos PDF procesados al mes. En términos de costes, el uso de PSPDFKit incurre en gastos recurrentes. Por otro lado, IronPDF ofrece licencias de por vida sin costes recurrentes.
Tanto IronPDF como PSPDFKit son marcos líderes del sector basados en tecnologías similares que ofrecen las mismas funciones básicas de procesamiento de PDF. El código escrito con IronPDF tiende a ser más sucinto y compacto. El código escrito con PSPDFKit es igualmente comprensible, pero un poco más complejo en su estructura.
Iron Software ofrece un paquete de cinco herramientas por el precio de sólo dos. Las herramientas que se ofrecen son:
Para obtener más información sobre las herramientas incluidas, visitePágina oficial de IronSuite.
9 productos API .NET para sus documentos de oficina