Pruebas en un entorno real
Pruebe en producción sin marcas de agua.
Funciona donde lo necesites.
Tanto GroupDocs como IronPDF son aplicaciones multiplataforma que proporcionan a los ingenieros las herramientas necesarias para la automatización de documentos. Pueden crear, editar, dar formato e imprimir documentos PDF, uno de los formatos de documento más utilizados hoy en día. Al crear proyectos con .NET y .NET Core, los desarrolladores deben elegir las herramientas que mejor se adapten al proyecto.
Los desarrolladores deben estar bien informados sobre las bibliotecas y herramientas disponibles. Las bibliotecas PDF no son una excepción. Como cada una tiene sus puntos fuertes y débiles, corresponde al desarrollador utilizar la herramienta que mejor se adapte a la empresa y al proyecto.
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:
IronPDF es un paquete comercial de creación de PDF basado en C# para la plataforma .NET. Produce PDF a partir de HTML, CSS, imágenes y JavaScript. Funciona igual de bien en aplicaciones web, intranets seguras, aplicaciones de consola, aplicaciones WPF y sitios web con patrón MVC.
IronPDF es compatible con todos los proyectos .NET Framework y .NET Core a partir de la versión 4.
La API GroupDocs.Editor es una biblioteca .NET multiplataforma que permite a los desarrolladores crear aplicaciones sencillas que interactúan fácilmente con los editores HTML más conocidos. (tanto gratuitos como de pago) para convertir, editar y manipular documentos en diversos formatos de archivo.
Los desarrolladores pueden utilizar GroupDocs.Editor para cargar un documento, convertirlo a HTML, enviar el HTML a un editor externo y, a continuación, guardar el HTML de nuevo en su formato original. Además, la API puede acceder a recursos vinculados al documento dentro del editor. Admite numerosos formatos de archivo de procesamiento de texto y Web, como Microsoft Word, Microsoft Excel, OpenDocument, texto, marcas de agua, etc.
¿Qué diferencia a estas dos bibliotecas? Averigüémoslo.
GroupDocs.Annotation para .NET permite al desarrollador producir aplicaciones en C#, ASP.NET y otras tecnologías .NET capaces de realizar funciones de anotación de documentos. Las anotaciones de documentos que admite esta biblioteca incluyen: dibujar formas y flechas, colocar puntos y burbujas de llamada, añadir texto e imágenes, insertar comentarios y resaltados, tachar/subrayar textos e imágenes, y otras. GroupDocs.Annoation también puede manipular anotaciones de documentos.
Después de anotar un documento, la biblioteca puede volver a guardarlo en su tipo de archivo original. Este potente anotador de documentos puede anotar archivos PDF, archivos HTML, documentos Word, hojas de cálculo Excel, presentaciones PowerPoint, archivos Visio, dibujos CAD, formatos de imagen y muchos más.
// Initialize list of AnnotationInfo
List<AnnotationInfo> annotations = new List<AnnotationInfo>();
// Initialize text annotation
AnnotationInfo textAnnotation = new AnnotationInfo
{
Box = new Rectangle((float)265.44, (float)153.86, 206, 36), Type = AnnotationType.Text
};
// Add annotation to list
annotations.Add(textAnnotation);
// Get input file stream
Stream inputFile = new FileStream("D:/input.pdf", FileMode.Open, File
.ReadWrite);
// Export annotation and savthe e output file
CommonUtilities.SaveOutputDocument(inputFile, annotations, DocumentType.Pdf);
// Initialize list of AnnotationInfo
List<AnnotationInfo> annotations = new List<AnnotationInfo>();
// Initialize text annotation
AnnotationInfo textAnnotation = new AnnotationInfo
{
Box = new Rectangle((float)265.44, (float)153.86, 206, 36), Type = AnnotationType.Text
};
// Add annotation to list
annotations.Add(textAnnotation);
// Get input file stream
Stream inputFile = new FileStream("D:/input.pdf", FileMode.Open, File
.ReadWrite);
// Export annotation and savthe e output file
CommonUtilities.SaveOutputDocument(inputFile, annotations, DocumentType.Pdf);
' Initialize list of AnnotationInfo
Dim annotations As New List(Of AnnotationInfo)()
' Initialize text annotation
Dim textAnnotation As New AnnotationInfo With {
.Box = New Rectangle(CSng(265.44), CSng(153.86), 206, 36),
.Type = AnnotationType.Text
}
' Add annotation to list
annotations.Add(textAnnotation)
' Get input file stream
Dim inputFile As Stream = New FileStream("D:/input.pdf", FileMode.Open, File.ReadWrite)
' Export annotation and savthe e output file
CommonUtilities.SaveOutputDocument(inputFile, annotations, DocumentType.Pdf)
Los usuarios pueden anotar documentos PDF mediante programación con IronPDF utilizando el método IronPdf.PdfDocument.AddTextAnnotation
y la clase PdfDocument.TextAnnotation
.
using PdfDocument Pdf = PdfDocument.FromFile("existing.pdf");// Create a PDF annotation object
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
};
// Add the annotation "sticky note" to a specific page and location within any new or existing PDF.
Pdf.AddTextAnnotation(Annotation, 1, 150, 250);
Pdf.SaveAs("existing.pdf");
using PdfDocument Pdf = PdfDocument.FromFile("existing.pdf");// Create a PDF annotation object
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
};
// Add the annotation "sticky note" to a specific page and location within any new or existing PDF.
Pdf.AddTextAnnotation(Annotation, 1, 150, 250);
Pdf.SaveAs("existing.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
Las funciones de anotación de texto de IronPDF incluyen añadir/cambiar el color, cambiar el tamaño de los elementos, fijar la opacidad, añadir símbolos y editar el texto.
La conversión de determinados formatos de archivo a PDF es un aspecto esencial para mantener la integridad de los archivos. Veamos cómo ambas soluciones de software realizan las distintas conversiones.
MS Word, Excel, PowerPoint, Visio y otros tipos de documentos pueden convertirse mediante la API GroupDocs.Conversion API de GroupDocs. GroupDocs.Conversion es una API independiente diseñada para aplicaciones del lado del servidor que requieren alta velocidad. No depende de suites de software de productividad como Microsoft Office u Open Office.
XLSB (Formato de archivo binario de Excel) es un tipo de archivo que almacena los datos de los libros de Excel en formato binario en lugar de XML (como en el caso del tipo de archivo Excel XLSX).
El siguiente código de ejemplo convierte XLSB a PDF en C#.
using System;
using GroupDocs.Conversion.Options.Convert;
namespace ConvertXlsbToPdfInCSharp
{
class Program
{
public static void Main(string [] args) // Main function to convert XLSB to PDF using C#
{
// Remove the watermathe rk in output PDF document by adding license
string licensePath = "GroupDocs.Conversion.lic";
GroupDocs.Conversion.License lic = new GroupDocs.Conversion.License();
lic.SetLicense(licensePath);
// Load the source XLSB file for conversion to PDF
var converter = new GroupDocs.Conversion.Converter("sample.xlsb");
// Set convert options for the PDF document
var convertOptions = new PdfConvertOptions();
// Convert and save the XLSB in PDF format
converter.Convert("converted.pdf", convertOptions);
Console.WriteLine("Done");
}
}
}
using System;
using GroupDocs.Conversion.Options.Convert;
namespace ConvertXlsbToPdfInCSharp
{
class Program
{
public static void Main(string [] args) // Main function to convert XLSB to PDF using C#
{
// Remove the watermathe rk in output PDF document by adding license
string licensePath = "GroupDocs.Conversion.lic";
GroupDocs.Conversion.License lic = new GroupDocs.Conversion.License();
lic.SetLicense(licensePath);
// Load the source XLSB file for conversion to PDF
var converter = new GroupDocs.Conversion.Converter("sample.xlsb");
// Set convert options for the PDF document
var convertOptions = new PdfConvertOptions();
// Convert and save the XLSB in PDF format
converter.Convert("converted.pdf", convertOptions);
Console.WriteLine("Done");
}
}
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
Los procedimientos para convertir un archivo VSDX de Visio en un archivo PDF mediante la API GroupDocs.Conversion son los siguientes:
PdfConvertOptions
y utilízala para especificar opciones de conversión de archivos.using System;
using GroupDocs.Conversion.Options.Convert;
namespace ConvertVsdxToPdfInCSharp
{
class Program
{
public static void Main(string [] args) // Main function to convert VSDX to PDF using C#
{
// Remove the watermark in output PDF document by adding license
string licensePath = "GroupDocs.Conversion.lic";
GroupDocs.Conversion.License lic = new GroupDocs.Conversion.License();
lic.SetLicense(licensePath);
// Load the source VSDX file for conversion to PDF
var converter = new GroupDocs.Conversion.Converter("sample.vsdx");
// Set the convert options for PDF document
var convertOptions = new PdfConvertOptions();
// Convert and save the VSDX in PDF format
converter.Convert("converted.pdf", convertOptions);
Console.WriteLine("Done");
}
}
}
using System;
using GroupDocs.Conversion.Options.Convert;
namespace ConvertVsdxToPdfInCSharp
{
class Program
{
public static void Main(string [] args) // Main function to convert VSDX to PDF using C#
{
// Remove the watermark in output PDF document by adding license
string licensePath = "GroupDocs.Conversion.lic";
GroupDocs.Conversion.License lic = new GroupDocs.Conversion.License();
lic.SetLicense(licensePath);
// Load the source VSDX file for conversion to PDF
var converter = new GroupDocs.Conversion.Converter("sample.vsdx");
// Set the convert options for PDF document
var convertOptions = new PdfConvertOptions();
// Convert and save the VSDX in PDF format
converter.Convert("converted.pdf", convertOptions);
Console.WriteLine("Done");
}
}
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
Este ejemplo muestra cómo utilizar GroupDocs.Conversion para producir archivos PDF a partir de HTML. Utiliza la clase Converter
para cargar el documento fuente, la clase PdfConvertOptions
para definir las propiedades del documento de salida y la función Convert
para convertir el documento fuente en un archivo PDF.
using System;
using GroupDocs.Conversion.Options.Convert;
namespace ConvertVsdxToPdfInCSharp
{
class Program
{
public static void Main(string [] args) // Main function to convert VSDX to PDF using C#
{
// Remove the watermark in output PDF document by adding license
string licensePath = "GroupDocs.Conversion.lic";
GroupDocs.Conversion.License lic = new GroupDocs.Conversion.License();
lic.SetLicense(licensePath);
// Load the source VSDX file for conversion to PDF
var converter = new GroupDocs.Conversion.Converter("sample.vsdx");
// Set the convert options for PDF document
var convertOptions = new PdfConvertOptions();
// Convert and save the VSDX in PDF format
converter.Convert("converted.pdf", convertOptions);
Console.WriteLine("Done");
}
}
}
using System;
using GroupDocs.Conversion.Options.Convert;
namespace ConvertVsdxToPdfInCSharp
{
class Program
{
public static void Main(string [] args) // Main function to convert VSDX to PDF using C#
{
// Remove the watermark in output PDF document by adding license
string licensePath = "GroupDocs.Conversion.lic";
GroupDocs.Conversion.License lic = new GroupDocs.Conversion.License();
lic.SetLicense(licensePath);
// Load the source VSDX file for conversion to PDF
var converter = new GroupDocs.Conversion.Converter("sample.vsdx");
// Set the convert options for PDF document
var convertOptions = new PdfConvertOptions();
// Convert and save the VSDX in PDF format
converter.Convert("converted.pdf", convertOptions);
Console.WriteLine("Done");
}
}
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
En este ejemplo sólo se han descrito algunos parámetros del documento PDF resultante. Los desarrolladores pueden especificar opciones adicionales de conversión de archivos, como ajustar el espacio marginal, establecer contraseñas, añadir marcas de agua, etc.
Para convertir rápidamente un archivo RTF en PDF utilizando GroupDocs:
Converter
para cargar el archivo RTF fuente.PdfConvertOptions
para definir las propiedades del documento PDF renderizado.Convert
. (introduciendo una ubicación de salida y la instancia `PdfConvertOptions) para convertir el archivo RTF en un archivo PDF.using System;
using GroupDocs.Conversion.Options.Convert;
namespace ConvertRtfToPdfUsingCSharp
{
class Program
{
public static void Main(string [] args) // Main function to convert RTF to PDF using C#
{
// Remove the watermark in output PDF document by adding license
string licensePath = "GroupDocs.Conversion.lic";
GroupDocs.Conversion.License lic = new GroupDocs.Conversion.License();
lic.SetLicense(licensePath);
// Load the source RTF file for conversion to PDF
var converter = new GroupDocs.Conversion.Converter("sample.rtf");
// Set the properties for the output PDF document
var convertOptions = new PdfConvertOptions()
{
Height = 500,
Width = 500,
Dpi = 100,
PageNumber = 1,
PagesCount = 1
};
// Convert and save the RTF in PDF format
converter.Convert("converted.pdf", convertOptions);
Console.WriteLine("Done");
}
}
}
using System;
using GroupDocs.Conversion.Options.Convert;
namespace ConvertRtfToPdfUsingCSharp
{
class Program
{
public static void Main(string [] args) // Main function to convert RTF to PDF using C#
{
// Remove the watermark in output PDF document by adding license
string licensePath = "GroupDocs.Conversion.lic";
GroupDocs.Conversion.License lic = new GroupDocs.Conversion.License();
lic.SetLicense(licensePath);
// Load the source RTF file for conversion to PDF
var converter = new GroupDocs.Conversion.Converter("sample.rtf");
// Set the properties for the output PDF document
var convertOptions = new PdfConvertOptions()
{
Height = 500,
Width = 500,
Dpi = 100,
PageNumber = 1,
PagesCount = 1
};
// Convert and save the RTF in PDF format
converter.Convert("converted.pdf", convertOptions);
Console.WriteLine("Done");
}
}
}
Imports System
Imports GroupDocs.Conversion.Options.Convert
Namespace ConvertRtfToPdfUsingCSharp
Friend Class Program
Public Shared Sub Main(ByVal args() As String) ' Main function to convert RTF to PDF using C#
' Remove the watermark in output PDF document by adding license
Dim licensePath As String = "GroupDocs.Conversion.lic"
Dim lic As New GroupDocs.Conversion.License()
lic.SetLicense(licensePath)
' Load the source RTF file for conversion to PDF
Dim converter = New GroupDocs.Conversion.Converter("sample.rtf")
' Set the properties for the output PDF document
Dim convertOptions = New PdfConvertOptions() With {
.Height = 500,
.Width = 500,
.Dpi = 100,
.PageNumber = 1,
.PagesCount = 1
}
' Convert and save the RTF in PDF format
converter.Convert("converted.pdf", convertOptions)
Console.WriteLine("Done")
End Sub
End Class
End Namespace
using System;
using GroupDocs.Conversion.Options.Convert;
namespace ConvertExcelToPdfInCSharp
{
class Program
{
public static void Main(string [] args) // Main function to convert Excel to PDF using C#
{
// Remove the watermark in output PDF document by adding license
string licensePath = "GroupDocs.Conversion.lic";
GroupDocs.Conversion.License lic = new GroupDocs.Conversion.License();
lic.SetLicense(licensePath);
// Load the source Excel file for conversion to PDF
var converter = new GroupDocs.Conversion.Converter("sample.xlsx");
// Set the starting sheet number and consecutive sheet count
var convertOptions = new PdfConvertOptions()
{
PageNumber = 1,
PagesCount = 2
};
// Convert and save the Excel in PDF format
converter.Convert("converted.pdf", convertOptions);
Console.WriteLine("Done");
}
}
}
using System;
using GroupDocs.Conversion.Options.Convert;
namespace ConvertExcelToPdfInCSharp
{
class Program
{
public static void Main(string [] args) // Main function to convert Excel to PDF using C#
{
// Remove the watermark in output PDF document by adding license
string licensePath = "GroupDocs.Conversion.lic";
GroupDocs.Conversion.License lic = new GroupDocs.Conversion.License();
lic.SetLicense(licensePath);
// Load the source Excel file for conversion to PDF
var converter = new GroupDocs.Conversion.Converter("sample.xlsx");
// Set the starting sheet number and consecutive sheet count
var convertOptions = new PdfConvertOptions()
{
PageNumber = 1,
PagesCount = 2
};
// Convert and save the Excel in PDF format
converter.Convert("converted.pdf", convertOptions);
Console.WriteLine("Done");
}
}
}
Imports System
Imports GroupDocs.Conversion.Options.Convert
Namespace ConvertExcelToPdfInCSharp
Friend Class Program
Public Shared Sub Main(ByVal args() As String) ' Main function to convert Excel to PDF using C#
' Remove the watermark in output PDF document by adding license
Dim licensePath As String = "GroupDocs.Conversion.lic"
Dim lic As New GroupDocs.Conversion.License()
lic.SetLicense(licensePath)
' Load the source Excel file for conversion to PDF
Dim converter = New GroupDocs.Conversion.Converter("sample.xlsx")
' Set the starting sheet number and consecutive sheet count
Dim convertOptions = New PdfConvertOptions() With {
.PageNumber = 1,
.PagesCount = 2
}
' Convert and save the Excel in PDF format
converter.Convert("converted.pdf", convertOptions)
Console.WriteLine("Done")
End Sub
End Class
End Namespace
Con GroupDocs, puede convertir un formato de imagen JPG en un documento PDF con sólo unas líneas de código. GroupDocs puede convertir fácilmente otros tipos de imagen, como PNG, TIFF, BMP y otros.
using System;
using GroupDocs.Conversion.Options.Convert;
namespace ConvertExcelToPdfInCSharp
{
class Program
{
public static void Main(string [] args) // Main function to convert Excel to PDF using C#
{
// Remove the watermark in output PDF document by adding license
string licensePath = "GroupDocs.Conversion.lic";
GroupDocs.Conversion.License lic = new GroupDocs.Conversion.License();
lic.SetLicense(licensePath);
// Load the source Excel file for conversion to PDF
var converter = new GroupDocs.Conversion.Converter("sample.xlsx");
// Set the starting sheet number and consecutive sheet count
var convertOptions = new PdfConvertOptions()
{
PageNumber = 1,
PagesCount = 2
};
// Convert and save the Excel in PDF format
converter.Convert("converted.pdf", convertOptions);
Console.WriteLine("Done");
}
}
}
using System;
using GroupDocs.Conversion.Options.Convert;
namespace ConvertExcelToPdfInCSharp
{
class Program
{
public static void Main(string [] args) // Main function to convert Excel to PDF using C#
{
// Remove the watermark in output PDF document by adding license
string licensePath = "GroupDocs.Conversion.lic";
GroupDocs.Conversion.License lic = new GroupDocs.Conversion.License();
lic.SetLicense(licensePath);
// Load the source Excel file for conversion to PDF
var converter = new GroupDocs.Conversion.Converter("sample.xlsx");
// Set the starting sheet number and consecutive sheet count
var convertOptions = new PdfConvertOptions()
{
PageNumber = 1,
PagesCount = 2
};
// Convert and save the Excel in PDF format
converter.Convert("converted.pdf", convertOptions);
Console.WriteLine("Done");
}
}
}
Imports System
Imports GroupDocs.Conversion.Options.Convert
Namespace ConvertExcelToPdfInCSharp
Friend Class Program
Public Shared Sub Main(ByVal args() As String) ' Main function to convert Excel to PDF using C#
' Remove the watermark in output PDF document by adding license
Dim licensePath As String = "GroupDocs.Conversion.lic"
Dim lic As New GroupDocs.Conversion.License()
lic.SetLicense(licensePath)
' Load the source Excel file for conversion to PDF
Dim converter = New GroupDocs.Conversion.Converter("sample.xlsx")
' Set the starting sheet number and consecutive sheet count
Dim convertOptions = New PdfConvertOptions() With {
.PageNumber = 1,
.PagesCount = 2
}
' Convert and save the Excel in PDF format
converter.Convert("converted.pdf", convertOptions)
Console.WriteLine("Done")
End Sub
End Class
End Namespace
La API de GroupDocs puede convertir fotos a otros formatos de documento como Microsoft Word, Excel y PowerPoint.
IronPDF for .NET Core y .NET Framework utiliza un motor de ejecución Chromium para convertir contenido HTML en archivos PDF. HTML es la base del conjunto de funciones principales de IronPDF. Su conversión de documentos HTML en archivos PDF es perfecta, duplicados exactos de cómo aparecen en Google Chrome para escritorio.
La biblioteca ofrece varias opciones para hacerlo. En las secciones siguientes se analizarán en detalle algunos de ellos.
IronPDF puede renderizar código fuente HTML, CSS y JavaScript sin procesar directamente como archivos PDF, como en el ejemplo siguiente.
using IronPdf;
var Renderer = new IronPdf.ChromePdfRenderer();
using var PDF = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>")
PDF.SaveAs("pixel-perfect.pdf");
/****** Advanced ******/
// Load external html assets: images, css and javascript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
using var AdvancedPDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
AdvancedPDF.SaveAs("html-with-assets.pdf");
using IronPdf;
var Renderer = new IronPdf.ChromePdfRenderer();
using var PDF = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>")
PDF.SaveAs("pixel-perfect.pdf");
/****** Advanced ******/
// Load external html assets: images, css and javascript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
using var AdvancedPDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
AdvancedPDF.SaveAs("html-with-assets.pdf");
Imports IronPdf
Private Renderer = New IronPdf.ChromePdfRenderer()
Private PDF = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>") PDF.SaveAs("pixel-perfect.pdf")
'''**** Advanced *****
' Load external html assets: images, css and javascript.
' An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
Private AdvancedPDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets\")
AdvancedPDF.SaveAs("html-with-assets.pdf")
IronPDF facilita la conversión de HTML en documentos PDF a partir de URL existentes.
using IronPdf;
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
using var Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");
Pdf.SaveAs("url.pdf");
using IronPdf;
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
using var Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");
Pdf.SaveAs("url.pdf");
Imports IronPdf
Private Renderer As New IronPdf.ChromePdfRenderer()
Private Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/")
Pdf.SaveAs("url.pdf")
Con esta capacidad, los diseñadores y programadores pueden colaborar de forma más eficaz en el desarrollo de PDF mediante la representación de PDF desde URL ASP.NET que admitan variables de cadenas de consulta.
La biblioteca IronPDF puede generar ASP.NET páginas web como PDF en lugar de como HTML con sólo una línea de código añadida al evento Form_Load
de una aplicación:
private void Form1_Load(object sender, EventArgs e)
{
IronPdf.AspxToPdf.RenderThisPageAsPdf();
}
private void Form1_Load(object sender, EventArgs e)
{
IronPdf.AspxToPdf.RenderThisPageAsPdf();
}
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs)
IronPdf.AspxToPdf.RenderThisPageAsPdf()
End Sub
Esto permite que los PDF basados en datos se diseñen y prueben primero como HTML en aras de la simplicidad.
Los documentos PDF pueden crearse fácilmente a partir de uno o varios archivos de imagen utilizando la clase IronPdf.ImageToPdfConverter
.
// PM> Install-Package IronPdf
using IronPdf;
using System.IO;
using System.Linq;
// One or more images as IEnumerable. This example selects all JPEG images in a spe-cific folder.
var ImageFiles = System.IO.Directory.EnumerateFiles(@"C:\project\assets").Where(f => f.EndsWith(".jpg")
f.EndsWith(".jpeg"));
// Convert the images to a PDF and save it.
ImageToPdfConverter.ImageToPdf(ImageFiles).SaveAs(@"C:\project\composite.pdf");
//Also see PdfDocument.RasterizeToImageFiles() method to flatten a PDF to images or thumbnails
// PM> Install-Package IronPdf
using IronPdf;
using System.IO;
using System.Linq;
// One or more images as IEnumerable. This example selects all JPEG images in a spe-cific folder.
var ImageFiles = System.IO.Directory.EnumerateFiles(@"C:\project\assets").Where(f => f.EndsWith(".jpg")
f.EndsWith(".jpeg"));
// Convert the images to a PDF and save it.
ImageToPdfConverter.ImageToPdf(ImageFiles).SaveAs(@"C:\project\composite.pdf");
//Also see PdfDocument.RasterizeToImageFiles() method to flatten a PDF to images or thumbnails
' PM> Install-Package IronPdf
Imports IronPdf
Imports System.IO
Imports System.Linq
' One or more images as IEnumerable. This example selects all JPEG images in a spe-cific folder.
Private ImageFiles = System.IO.Directory.EnumerateFiles("C:\project\assets").Where(Function(f) f.EndsWith(".jpg") f.EndsWith(".jpeg"))
' Convert the images to a PDF and save it.
ImageToPdfConverter.ImageToPdf(ImageFiles).SaveAs("C:\project\composite.pdf")
'Also see PdfDocument.RasterizeToImageFiles() method to flatten a PDF to images or thumbnails
IronPDF incluye una amplia compatibilidad con JavaScript en la conversión de HTML a PDF, incluida la compatibilidad con Angular.js y otros populares marcos web front-end y de una sola página.
IronPDF permite a los usuarios utilizar JavaScript para incrustar imágenes y otros tipos de contenido en los PDF. Para ello, la biblioteca permite incrustarlos directamente como cadenas HTML.
Los contenidos que IronPDF puede incrustar de este modo incluyen (pero no se limitan a):
System.Drawing.Image
System.Drawing.Bitmap
Esto es útil para evitar la carga externa de activos durante la conversión de HTML a PDF. Puede mejorar la velocidad y permitir renderizar trabajos enteros almacenados en ubicaciones ajenas al sistema de archivos, como cadenas o bases de datos.
// PM> Install-Package IronPdf
using IronPdf;
var htmlWithJs = @"
<h1>This is HTML</h1>
<script>
document.write('<h1>This is JavaScript</h1>');
</script>";
var Renderer = new IronPdf.ChromePdfRenderer();
Renderer.RenderingOptions.EnableJavaScript = true;
Renderer.RenderingOptions.RenderDelay = 100;
using var pdfdoc = Renderer.RenderHtmlAsPdf(htmlWithJs);
pdfdoc.SaveAs("js.pdf");
// PM> Install-Package IronPdf
using IronPdf;
var htmlWithJs = @"
<h1>This is HTML</h1>
<script>
document.write('<h1>This is JavaScript</h1>');
</script>";
var Renderer = new IronPdf.ChromePdfRenderer();
Renderer.RenderingOptions.EnableJavaScript = true;
Renderer.RenderingOptions.RenderDelay = 100;
using var pdfdoc = Renderer.RenderHtmlAsPdf(htmlWithJs);
pdfdoc.SaveAs("js.pdf");
' PM> Install-Package IronPdf
Imports IronPdf
Private htmlWithJs = "
<h1>This is HTML</h1>
<script>
document.write('<h1>This is JavaScript</h1>');
</script>"
Private Renderer = New IronPdf.ChromePdfRenderer()
Renderer.RenderingOptions.EnableJavaScript = True
Renderer.RenderingOptions.RenderDelay = 100
Dim pdfdoc = Renderer.RenderHtmlAsPdf(htmlWithJs)
pdfdoc.SaveAs("js.pdf")
Para las páginas web que hacen uso de Angular para cargar contenido dinámicamente, IronPDF puede dar tiempo para la carga asíncrona de contenido.
En el ejemplo siguiente, el programa esperará medio segundo antes de renderizar la página web en su totalidad.
// PM> Install-Package IronPdf
using IronPdf;
var Renderer = new IronPdf.ChromePdfRenderer();
Renderer.RenderingOptions.EnableJavaScript = true;
Renderer.RenderingOptions.RenderDelay = 500;
using var pdfdoc = Renderer.RenderUrlAsPdf("https://angular.io/");
pdfdoc.SaveAs("angular.pdf");
// PM> Install-Package IronPdf
using IronPdf;
var Renderer = new IronPdf.ChromePdfRenderer();
Renderer.RenderingOptions.EnableJavaScript = true;
Renderer.RenderingOptions.RenderDelay = 500;
using var pdfdoc = Renderer.RenderUrlAsPdf("https://angular.io/");
pdfdoc.SaveAs("angular.pdf");
' PM> Install-Package IronPdf
Imports IronPdf
Private Renderer = New IronPdf.ChromePdfRenderer()
Renderer.RenderingOptions.EnableJavaScript = True
Renderer.RenderingOptions.RenderDelay = 500
Dim pdfdoc = Renderer.RenderUrlAsPdf("https://angular.io/")
pdfdoc.SaveAs("angular.pdf")
Los archivos PDF son ideales para almacenar datos, mantener el diseño de los documentos y conservar fuentes y gráficos. Trabajar desde casa se ha convertido en una norma en nuestro mundo. Rellenar y firmar papeles, entregar expedientes y procesar documentos son sólo algunas de las tareas diarias que deben realizar las organizaciones. Entregar firmas en PDF como sustituto de las firmas físicas es ahora una actividad clave. Las firmas digitales han cobrado cada vez más importancia a medida que las empresas buscan nuevas formas de firmar acuerdos y contratos, así como de intercambiar documentos PDF en línea.
Cree aplicaciones en C#, ASP.NET y otras tecnologías basadas en .NET que permitan a los usuarios firmar documentos empresariales digitales sin instalar ningún otro software de terceros mediante la API GroupDocs.Signature para .NET. Esta biblioteca de firmas electrónicas es fácil de usar. Los desarrolladores .NET pueden integrar amplias funciones de firma electrónica en sus aplicaciones, lo que permite a los usuarios firmar, realizar operaciones de búsqueda y validar firmas electrónicas de diversos tipos de documentos.
GroupDocs.Signature es compatible con PDF, Word, Excel, PowerPoint, OpenDocument, imágenes y otros formatos de archivo estándar del sector. Puede utilizar texto, imágenes, códigos de barras, códigos QR, campos de formulario, sellos y metadatos como tipos de firma.
using (Signature signature = new Signature("D:\\sample.pdf"))
{
TextSignOptions options = new TextSignOptions("John Smith")
{
// set Text color
ForeColor = Color.Red
};
// sign document to file
signature.Sign("D:\\signed.pdf", options);
}
using (Signature signature = new Signature("D:\\sample.pdf"))
{
TextSignOptions options = new TextSignOptions("John Smith")
{
// set Text color
ForeColor = Color.Red
};
// sign document to file
signature.Sign("D:\\signed.pdf", options);
}
Using signature As New Signature("D:\sample.pdf")
Dim options As New TextSignOptions("John Smith") With {.ForeColor = Color.Red}
' sign document to file
signature.Sign("D:\signed.pdf", options)
End Using
IronPDF es una excelente opción para todas las actividades PDF basadas en C# en ordenadores de sobremesa. Los desarrolladores pueden utilizarlo para añadir firmas, rellenar y firmar documentos PDF, proteger criptográficamente formularios PDF e incluso añadir una imagen de su firma.
Los desarrolladores suelen preguntar sobre la utilización de IronPDF y C# para añadir una firma a un PDF mediante programación. Esto puede significar muchas cosas para los desarrolladores:
Añada un icono de firma manuscrita humana a un PDF que haya 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. Solo se necesitan unas pocas líneas de código para completar el procedimiento.
// open an existing PDF document or create a new one
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");
// open an existing PDF document or create a new one
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");
' open an existing PDF document or create a new one
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")
El siguiente código utiliza un certificado digital .pfx y .p12 X509Certificate2 para firmar criptográficamente un PDF.
// 123456 below represents the signature password
new IronPdf.PdfSignature("CertificateFile.p12", "123456").SignPdfFile("ASPX to PDF.pdf");
// 123456 below represents the signature password
new IronPdf.PdfSignature("CertificateFile.p12", "123456").SignPdfFile("ASPX to PDF.pdf");
' 123456 below represents the signature password
Call (New IronPdf.PdfSignature("CertificateFile.p12", "123456")).SignPdfFile("ASPX to PDF.pdf")
El ejemplo más complejo que se muestra a continuación utiliza el método de firma de ID digital X509Certificate2 junto con el escaneado de una firma manuscrita.
var Signature = new IronPdf.PdfSignature("Iron.pfx", "123456");
PdfDocument doc = Renderer.RenderHtmlAsPdf("<h1>Testing 2048 bit digital securi-ty</h1>");
// Step 3. Optional signing options and a handwritten Signature graphic
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 securi-ty</h1>");
// Step 3. Optional signing options and a handwritten Signature graphic
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 securi-ty</h1>")
' Step 3. Optional signing options and a handwritten Signature graphic
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")
Cuando es necesario consolidar varios archivos PDF en un solo documento o proporcionar menos archivos adjuntos, GroupDocs.Merger permite a los desarrolladores fusionar archivos PDF. GroupDocs.Merger lo consigue sin utilizar software de terceros ni realizar ningún trabajo manual.
GroupDocs.Merger puede combinar documentos PDF de cualquier tamaño y estructura. La API conservará todos los textos, fotos, tablas, gráficos, formularios y demás contenidos en su tamaño y formato originales.
Con unas pocas líneas de código C#, el siguiente ejemplo muestra cómo combinar archivos PDF:
Merger
y proporcione la ruta al archivo PDF de origen como argumento del constructor. Puede especificar una ruta de archivo absoluta o relativa en función de sus necesidades.Join
para unir documentos. Repita la operación con los demás documentos PDF que desee integrar.Save
con la ubicación del archivo de salida para guardar el documento PDF resultante.// Load the source PDF file
using (Merger merger = new Merger(@"c:\sample1.pdf"))
{
// Add another PDF file to merge
merger.Join(@"c:\sample2.pdf");
// Merge PDF files and save result
merger.Save(@"c:\merged.pdf");
}
// Load the source PDF file
using (Merger merger = new Merger(@"c:\sample1.pdf"))
{
// Add another PDF file to merge
merger.Join(@"c:\sample2.pdf");
// Merge PDF files and save result
merger.Save(@"c:\merged.pdf");
}
' Load the source PDF file
Using merger As New Merger("c:\sample1.pdf")
' Add another PDF file to merge
merger.Join("c:\sample2.pdf")
' Merge PDF files and save result
merger.Save("c:\merged.pdf")
End Using
IronPDF facilita la fusión de dos o más documentos PDF en C#.NET con IronPdf.PdfDocument.Merge
.
// PM> Install-Package IronPdf
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 html_b = @"<p> [PDF_B] </p>
<p> [PDF_B] 1st Page </p>
<div style = 'page-break-after: always;' ></div>
<p> [PDF_B] 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");
// PM> Install-Package IronPdf
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 html_b = @"<p> [PDF_B] </p>
<p> [PDF_B] 1st Page </p>
<div style = 'page-break-after: always;' ></div>
<p> [PDF_B] 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");
' PM> Install-Package IronPdf
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 html_b = "<p> [PDF_B] </p>
<p> [PDF_B] 1st Page </p>
<div style = 'page-break-after: always;' ></div>
<p> [PDF_B] 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")
IronPDF puede dividir documentos PDF extrayendo páginas individuales o intervalos de páginas en nuevos objetos IronPdf.PdfDocument
. IronPdf.PdfDocument.CopyPage
puede extraer páginas de uno o más archivos PDF y pegarlas en un nuevo documento.
// PM> Install-Package IronPdf
using IronPdf;
var html = @"<p> Hello Iron </p>
<p> This is 1st Page </p>
<div style = 'page-break-after: always;' ></div>
<p> This is 2nd Page</p>
<div style = 'page-break-after: always;' ></div>
<p> This is 3rd Page</p>";
var Renderer = new IronPdf.ChromePdfRenderer();
using var pdfdoc = Renderer.RenderHtmlAsPdf(html);
using var pdfdoc_page1 = pdfdoc.CopyPage(0);
pdfdoc_page1.SaveAs("Spli1.pdf");
using var pdfdoc_page2_3 = pdfdoc.CopyPages(1, 2);
pdfdoc_page2_3.SaveAs("Spli2.pdf");
//take the pages 2 & 3
// PM> Install-Package IronPdf
using IronPdf;
var html = @"<p> Hello Iron </p>
<p> This is 1st Page </p>
<div style = 'page-break-after: always;' ></div>
<p> This is 2nd Page</p>
<div style = 'page-break-after: always;' ></div>
<p> This is 3rd Page</p>";
var Renderer = new IronPdf.ChromePdfRenderer();
using var pdfdoc = Renderer.RenderHtmlAsPdf(html);
using var pdfdoc_page1 = pdfdoc.CopyPage(0);
pdfdoc_page1.SaveAs("Spli1.pdf");
using var pdfdoc_page2_3 = pdfdoc.CopyPages(1, 2);
pdfdoc_page2_3.SaveAs("Spli2.pdf");
//take the pages 2 & 3
' PM> Install-Package IronPdf
Imports IronPdf
Private html = "<p> Hello Iron </p>
<p> This is 1st Page </p>
<div style = 'page-break-after: always;' ></div>
<p> This is 2nd Page</p>
<div style = 'page-break-after: always;' ></div>
<p> This is 3rd Page</p>"
Private Renderer = New IronPdf.ChromePdfRenderer()
Private pdfdoc = Renderer.RenderHtmlAsPdf(html)
Private pdfdoc_page1 = pdfdoc.CopyPage(0)
pdfdoc_page1.SaveAs("Spli1.pdf")
Dim pdfdoc_page2_3 = pdfdoc.CopyPages(1, 2)
pdfdoc_page2_3.SaveAs("Spli2.pdf")
'take the pages 2 & 3
GroupDocs.Merger permite dividir el documento de origen en varios documentos resultantes. La división de documentos puede realizarse de forma diferente especificando una matriz de números de página, números de página de inicio/fin y diferentes modos de opción de división. Estos son los posibles casos de uso:
SplitMode.Pages
--- los números de página indican los números de página exactos almacenados en documentos separados de una página. Ej: Matriz{ 3, 6, 8 } producirá 3 documentos con las páginas tercera, sexta y octava.Se especifica la matriz de números de página, y el modo de división se establece en SplitMode.Interval
--- los números de página dados indican los límites de los intervalos de página guardados en los documentos multipágina separados. Ej: Matriz{ 3, 6, 8 } producirá 4 intervalos de páginas 1-2, 3-5, 6-7, 8-10.
También existe la opción de configurar ParameterRangeMode
y obtener sólo páginas pares o impares del rango de páginas deseado.
Divida el documento en varios documentos de una página por números de página exactos
string filePath = @"c:\sample.docx";
string filePathOut = @"c:\output\document_{0}.{1}";
SplitOptions splitOptions = new SplitOptions(filePathOut, new int [] { 3, 6, 8 });
using (Merger merger = new Merger(filePath))
{
merger.Split(splitOptions);
}
string filePath = @"c:\sample.docx";
string filePathOut = @"c:\output\document_{0}.{1}";
SplitOptions splitOptions = new SplitOptions(filePathOut, new int [] { 3, 6, 8 });
using (Merger merger = new Merger(filePath))
{
merger.Split(splitOptions);
}
Dim filePath As String = "c:\sample.docx"
Dim filePathOut As String = "c:\output\document_{0}.{1}"
Dim splitOptions As New SplitOptions(filePathOut, New Integer () { 3, 6, 8 })
Using merger As New Merger(filePath)
merger.Split(splitOptions)
End Using
Dividir el documento en varios documentos de una página por números de página de inicio/fin
string filePath = @"c:\sample.docx";
string filePathOut = @"c:\output\document_{0}.{1}";
SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 7);
using (Merger merger = new Merger(filePath))
{
merger.Split(splitOptions);
}
string filePath = @"c:\sample.docx";
string filePathOut = @"c:\output\document_{0}.{1}";
SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 7);
using (Merger merger = new Merger(filePath))
{
merger.Split(splitOptions);
}
Dim filePath As String = "c:\sample.docx"
Dim filePathOut As String = "c:\output\document_{0}.{1}"
Dim splitOptions As New SplitOptions(filePathOut, 3, 7)
Using merger As New Merger(filePath)
merger.Split(splitOptions)
End Using
Divida el documento en varios documentos de una página mediante los números de página inicial/final y los filtros par/impar.
string filePath = @"c:\sample.docx";
string filePathOut = @"c:\output\document_{0}.{1}";
SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 7, RangeMode.OddPages);
using (Merger merger = new Merger(filePath))
{
merger.Split(splitOptions);
}
string filePath = @"c:\sample.docx";
string filePathOut = @"c:\output\document_{0}.{1}";
SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 7, RangeMode.OddPages);
using (Merger merger = new Merger(filePath))
{
merger.Split(splitOptions);
}
Dim filePath As String = "c:\sample.docx"
Dim filePathOut As String = "c:\output\document_{0}.{1}"
Dim splitOptions As New SplitOptions(filePathOut, 3, 7, RangeMode.OddPages)
Using merger As New Merger(filePath)
merger.Split(splitOptions)
End Using
Dividir el documento en varios documentos de varias páginas
string filePath = @"c:\sample.docx";
string filePathOut = @"c:\output\document_{0}.{1}";
SplitOptions splitOptions = new SplitOptions(filePathOut, new int [] { 3, 6, 8 }, Split-Mode.Interval);
using (Merger merger = new Merger(filePath))
{
merger.Split(splitOptions);
}
string filePath = @"c:\sample.docx";
string filePathOut = @"c:\output\document_{0}.{1}";
SplitOptions splitOptions = new SplitOptions(filePathOut, new int [] { 3, 6, 8 }, Split-Mode.Interval);
using (Merger merger = new Merger(filePath))
{
merger.Split(splitOptions);
}
Dim filePath As String = "c:\sample.docx"
Dim filePathOut As String = "c:\output\document_{0}.{1}"
Dim splitOptions As New SplitOptions(filePathOut, New Integer () { 3, 6, 8 }, Split-Mode.Interval)
Using merger As New Merger(filePath)
merger.Split(splitOptions)
End Using
Los desarrolladores pueden utilizar GroupDocs .NET y Java API para añadir la capacidad de mostrar, anotar, convertir, firmar electrónicamente, comparar y ensamblar documentos en sus aplicaciones web, móviles o de escritorio. GroupDocs le concede una licencia no exclusiva, no sublicenciable y no cedible para utilizar sus servicios.
Los precios empiezan a partir de 1.999 dólares por un solo producto de la gama.
IronPDF es una biblioteca PDF gratuita en C#. Su uso es gratuito para el desarrollo. Para uso comercial, se pueden concertar pruebas de implantación de 30 días mediante contacto con el equipo de ingeniería.
IronPDF ofrece precios sencilloscon licencias a partir de $749, con numerosas opciones de personalización.
IronPDF no convierte HTML a PDF desde un servidor remoto. En su lugar, utiliza un motor interno de navegador web compatible con las normas (sin necesidad de instalar software adicional). El HTML se reproduce perfectamente en un formato que cumple las normas más estrictas de impresión comercial. El resultado es un PDF nítido y de alta calidad.
Por otro lado, la familia de productos GroupDocs.Total puede procesar más de 90 formatos de archivo populares. Permite la visualización de documentos, la anotación de documentos, la comparación de documentos, la conversión de documentos, la manipulación de documentos y la automatización de documentos. Además, los usuarios pueden ver los documentos utilizando el visor de documentos en línea para soluciones de escritorio.
IronPDF tiene ventaja sobre GroupDocs porque no requiere ninguna descarga adicional después de la primera configuración; esto ahorra tiempo y garantiza que el resultado previsto se consiga rápidamente. Con una sola descarga, IronPDF proporciona todas las funciones necesarias. Sin embargo, PDFTron incluye módulos que deben descargarse por separado antes de poder montar el paquete completo. Se pueden descargar módulos específicos para añadir más funciones.
IronPDF le proporciona breves líneas de código que puede utilizar para realizar su tarea de manipulación de PDF en un abrir y cerrar de ojos.
Y lo que es más importante, las licencias de IronPDF son sencillas y todos los datos están disponibles en el sitio web, lo que supone una ventaja frente a la competencia. La oferta especial actual le permite obtener cinco productos de Iron Software por el precio de sólo dos.
9 productos API .NET para sus documentos de oficina