Pruebas en un entorno real
Pruebe en producción sin marcas de agua.
Funciona donde lo necesites.
Generar documentos PDF mediante programación puede resultar complejo debido a su complejidad, especialmente cuando incluyen imágenes, tablas, texto, formato y otras características.
El principal reto es averiguar cómo convertir un documento de texto plano en formato PDF. Se pueden utilizar numerosos métodos, pero es esencial elegir uno que mantenga el formato del documento original.
En este tutorial, compararé la biblioteca Telerik PdfProcessing de Progress Software Corporation con IronPDF de Iron Software en cuanto a la capacidad de ambas para generar documentos PDF.
Importar
para cargar un archivo HTML existente en C#Exportar
métodoDocumentación de Telerik PdfProcessingel programa PDF, que forma parte de la cartera de aplicaciones de procesamiento de documentos de Progress, permite crear archivos PDF y exportarlos sin necesidad de escribir ningún código. Cuenta con funciones como bloques de texto, imágenes, formularios, tablas, importación y exportación. Además, la biblioteca ofrece funciones perfectas para una edición fluida. La aplicación PdfProcessing está disponible para plataformas web, de escritorio y móviles.
IronPDF es una biblioteca PDF .NET que puede generar archivos PDF sin necesidad de Adobe Acrobat u otro software de terceros. La biblioteca puede crear PDF desde cero o exportar componentes .NET existentes(comoSitio oficial de ASP.NET páginas web, interfaces de usuario WPF, etc.) en archivos PDF.
En esta sección, voy a cubrir cómo podemos instalar IronPDF y Telerik bibliotecas de procesamiento de documentos.
Para crear un documento PDF a partir de HTML utilizando la suite de procesamiento de documentos de Telerik, tenemos que instalar tres bibliotecas:
Telerik.Documents.Core.Trial
Telerik.Documents.Flow.FormatProviders.Doc.Trial
Telerik.Documents.Flow.FormatProviders.Pdf.Trial
Telerik.Documents.Flow.Trial
Puede instalar las siguientes bibliotecas utilizando el gestor de paquetes NuGet.
Puede instalar IronPDF de tres formas:
Instalación con la consola del gestor de paquetes NuGet
Instalar con NuGet Visual Studio GUI
Descargar elArchivo DLL de IronPDF para la instalación manual
Para la instalación con la consola del gestor de paquetes, tendrá que escribir el siguiente comando en la consola.
Install-Package IronPdf
Instalará la última versión de la librería IronPDF en el proyecto. Por supuesto, siempre puede consultar la versión más reciente de IronPDF en la páginaPágina NuGet de IronPDF.
Telerik soporta la conversión de HTML a PDF utilizando el complemento de biblioteca RadFlowDocument
. Puede convertir un documento HTML que contenga una cadena HTML en un documento PDF.
Puede utilizar el siguiente código para convertir HTML a PDF utilizando Telerik.
using Telerik.Windows.Documents.Flow.FormatProviders.Html;
using Telerik.Windows.Documents.Flow.Model;
HtmlFormatProvider htmlProvider = new Telerik.Windows.Documents.Flow.FormatProviders.Html.HtmlFormatProvider();
// Create a document instance from the content.
RadFlowDocument document = htmlProvider.Import(File.ReadAllText(@"C:\HTML Website\website\index.html"));
Telerik.Windows.Documents.Flow.FormatProviders.Pdf.PdfFormatProvider pdfProvider = new Telerik.Windows.Documents.Flow.FormatProviders.Pdf.PdfFormatProvider();
// Export the document. The different overloads enable you to export to a byte [] or to a Stream.
byte [] pdfBytes = pdfProvider.Export(document);
File.WriteAllBytes(@"C:/test.pdf", pdfBytes);
using Telerik.Windows.Documents.Flow.FormatProviders.Html;
using Telerik.Windows.Documents.Flow.Model;
HtmlFormatProvider htmlProvider = new Telerik.Windows.Documents.Flow.FormatProviders.Html.HtmlFormatProvider();
// Create a document instance from the content.
RadFlowDocument document = htmlProvider.Import(File.ReadAllText(@"C:\HTML Website\website\index.html"));
Telerik.Windows.Documents.Flow.FormatProviders.Pdf.PdfFormatProvider pdfProvider = new Telerik.Windows.Documents.Flow.FormatProviders.Pdf.PdfFormatProvider();
// Export the document. The different overloads enable you to export to a byte [] or to a Stream.
byte [] pdfBytes = pdfProvider.Export(document);
File.WriteAllBytes(@"C:/test.pdf", pdfBytes);
Imports Telerik.Windows.Documents.Flow.FormatProviders.Html
Imports Telerik.Windows.Documents.Flow.Model
Private htmlProvider As HtmlFormatProvider = New Telerik.Windows.Documents.Flow.FormatProviders.Html.HtmlFormatProvider()
' Create a document instance from the content.
Private document As RadFlowDocument = htmlProvider.Import(File.ReadAllText("C:\HTML Website\website\index.html"))
Private pdfProvider As New Telerik.Windows.Documents.Flow.FormatProviders.Pdf.PdfFormatProvider()
' Export the document. The different overloads enable you to export to a byte [] or to a Stream.
Private pdfBytes() As Byte = pdfProvider.Export(document)
File.WriteAllBytes("C:/test.pdf", pdfBytes)
El código anterior es algo complejo. Primero tendrás que crear un HtmlFormatProvider
y un RadFlowDocument
. Importe el archivo HTML utilizando la función Import
del HtmlFormatProvider
, y utilice el objeto RadFlowDocument
devuelto para producir un PdfFormatProvider
. Por último, utilice el método WriteAllBytes
del PdfFormatProvider
para exportar el archivo PDF a una ubicación específica.
La salida generada por Telerik no es buena. Telerik no conservó la interfaz de usuario del documento HTML ni cargó ninguna de las imágenes.
IronPDF puede generar PDF utilizando archivos HTML, cadenas HTML y URL.
Utilice el siguiente código para crear un documento PDF utilizando un archivo HTML.
using IronPdf;
var IronRenderer = new ChromePdfRenderer();
IronRenderer.RenderingOptions.FitToPaperMode = IronPdf.Engines.Chrome.FitToPaperModes.FixedPixelWidth;
var pdfFromHtmlFile = IronRenderer.RenderHtmlFileAsPdf(@"C:\HTML Website\website\index.html");
pdfFromHtmlFile.SaveAs(@"C:/IronPDF Test.pdf");
using IronPdf;
var IronRenderer = new ChromePdfRenderer();
IronRenderer.RenderingOptions.FitToPaperMode = IronPdf.Engines.Chrome.FitToPaperModes.FixedPixelWidth;
var pdfFromHtmlFile = IronRenderer.RenderHtmlFileAsPdf(@"C:\HTML Website\website\index.html");
pdfFromHtmlFile.SaveAs(@"C:/IronPDF Test.pdf");
Imports IronPdf
Private IronRenderer = New ChromePdfRenderer()
IronRenderer.RenderingOptions.FitToPaperMode = IronPdf.Engines.Chrome.FitToPaperModes.FixedPixelWidth
Dim pdfFromHtmlFile = IronRenderer.RenderHtmlFileAsPdf("C:\HTML Website\website\index.html")
pdfFromHtmlFile.SaveAs("C:/IronPDF Test.pdf")
Utilizo el método RenderHtmlFileAsPdf
para generar el PDF a partir del archivo HTML. Esta función lee todo el contenido del archivo HTML, cargando los archivos CSS y JavaScript relacionados. La salida del método RenderHtmlFileAsPdf
es la siguiente.
IronPDF genera PDF a partir de HTML de forma muy bella. Este resultado es diferente y mejor que el PDF generado por Telerik.
Puede utilizar el siguiente código para generar PDF a partir de la URL.
using IronPdf.Rendering;
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.PaperSize = PdfPaperSize.A2;
PdfDocument myPdf = renderer.RenderUrlAsPdf("https://dotnet.microsoft.com/en-us/");
myPdf.SaveAs(@"C:/dotnet.pdf");
using IronPdf.Rendering;
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.PaperSize = PdfPaperSize.A2;
PdfDocument myPdf = renderer.RenderUrlAsPdf("https://dotnet.microsoft.com/en-us/");
myPdf.SaveAs(@"C:/dotnet.pdf");
Imports IronPdf.Rendering
Imports IronPdf
Private renderer As New ChromePdfRenderer()
renderer.RenderingOptions.PaperSize = PdfPaperSize.A2
Dim myPdf As PdfDocument = renderer.RenderUrlAsPdf("https://dotnet.microsoft.com/en-us/")
myPdf.SaveAs("C:/dotnet.pdf")
La función RenderUrlAsPdf
convierte la URL de una página web en un PDF. Espera a cargar todos los archivos relacionados antes de renderizar. Produce resultados extraordinarios. Conserva todos los colores, diseños e IU. Puede ver el resultado a continuación.
Puede obtener más tutoriales sobre IronPDF y verlos en acción en la páginaPágina de tutoriales de IronPDF.
Como hemos visto los resultados de la interfaz de usuario de salida para ASP.NET de IronPDF y Telerik, podemos decir que Telerik no es una buena opción para las conversiones de HTML a PDF, ya que su calidad de renderizado no es buena. Puede ver la diferencia entre las salidas de IronPDF y Telerik a continuación.
En la imagen anterior, se puede ver la clara diferencia entre las salidas estándar de IronPDF y Telerik. Comparemos los resultados en función de las características.
La calidad de renderizado de Telerik es pobre. Los PDF que renderiza tienen un formato deficiente y no conservan los estilos originales del documento. Por otro lado, IronPDF tiene una calidad de renderizado excepcional, conservando todos los aspectos del documento fuente.
Telerik no soporta archivos externos. Además, no es compatible con JavaScript.
Por el contrario, IronPDF es totalmente compatible con declaraciones CSS y JavaScript internas y externas. IronPDF permite activar o desactivar el procesamiento de JavaScript en función de las necesidades.
En resumen, las siguientes son algunas limitaciones adicionales de Telerik PdfProcessing:
Telerik no soporta archivos externos como CSS o JavaScript
Las imágenes no se muestran en los PDF
Telerik no soporta URLs a PDF
Telerik no soporta ningún archivo de enlace con el documento HTML
Las principales características de IronPDF son:
IronPDF conserva la interfaz de usuario y ofrece una calidad de renderizado perfecta.
IronPDF tiene muchas otras funciones. Puede visitar la páginaPágina de características de IronPDF para obtener la mejor información.
En este artículo, comparamos IronPDF con las bibliotecas de Telerik PdfDocument Processing y encontramos que IronPDF es mucho mejor que la biblioteca de Telerik para la conversión de HTML a PDF.
IronPDF es una excelente biblioteca para todas las operaciones relacionadas con PDF. Puede crear, editar y modificar archivos PDF en todos los marcos .NET y .NET Core más recientes. Visite elPágina de licencias de IronPDF para obtener más información sobre la distribución y concesión de licencias de los paquetes de productos IronPDF.
9 productos API .NET para sus documentos de oficina