COMPARACIONES DE PRODUCTOS Tutorial y Comparación de Visor de PDF de Accusoft Prizmdoc Curtis Chau Actualizado:agosto 20, 2025 Download IronPDF Descarga de NuGet Descarga de DLL Instalador de Windows Start Free Trial Copy for LLMs Copy for LLMs Copy page as Markdown for LLMs Open in ChatGPT Ask ChatGPT about this page Open in Gemini Ask Gemini about this page Open in Grok Ask Grok about this page Open in Perplexity Ask Perplexity about this page Share Share on Facebook Share on X (Twitter) Share on LinkedIn Copy URL Email article El Visor PDF de Accusoft proporciona capacidades de HTML a PDF y otras tareas de edición y manipulación de PDF para .NET. IronPDF también realiza estas mismas tareas de manera programática, ahorrándole tiempo y esfuerzo en sus proyectos de C#. Comparemos los dos y encontremos lo que es mejor para su proyecto. Comparar IronPDF con Accusoft PDF Viewer Convertir HTML a PDF Establecer encabezado y pie de página para PDFs Convertir PDF en archivo de imagen Comparar licencias, opciones de prueba gratis, y más [ ](/csharp-pdf.pdf) Visión general Acerca de IronPDF [IronPDF](/tutorials/html-to-pdf/) es una biblioteca HTML a PDF en C#. Permite a los ingenieros realizar tareas como crear archivos PDF desde fuentes como cadenas HTML, páginas web, URLs, y también establecer propiedades como marca de agua, marcador, encabezado y pie de página, entre otras. También podemos combinar múltiples archivos PDF en uno solo, o convertir páginas PDF en imágenes, o viceversa. Es gratis para el desarrollo y ofrece una prueba de implementación de 30 días para lanzar su proyecto. You can download a file project from this link. Acerca de Accusoft PrizmDoc Viewer [PrizmDoc Viewer](https://www.accusoft.com/products/prizmdoc-suite/prizmdoc-viewer-pdf/) es una API REST que se utiliza para trabajar con archivos PDF y convertirlos en otros formatos de forma remota. PrizmDoc puede convertir más de 100 formatos de archivo diferentes a PDF y de PDF a PNG, JPG, TIFF y SVG. También se puede utilizar para incluir diferentes tipos de opciones de firma electrónica en las aplicaciones. Tabla de comparación Trabajar con archivos PDF de manera programática. Trabajar con archivos PDF de manera programática. Soporta .NET Core con Windows, Mac o Linux. Soporta .NET Core usando Windows, Mac o Linux. Funciona localmente Envía documentos a un servidor remoto. Trabaja con o sin usar programación asíncrona. Debe usar programación asíncrona usando `System.Threading.Tasks`. Trabaja fácilmente sin conexión una vez que instalamos IronPDF en nuestro sistema. Debe conectarse a internet para enviar la solicitud al servidor de PrizmDoc Viewer (alojado en la nube o autoalojado). Proporciona muchas funciones predefinidas. Proporciona algunas funciones predefinidas. A menudo requiere mínimas líneas de código. A menudo requiere muchas líneas de código. Conversión ilimitada por proyecto en cada plan de licencia. Número limitado de transacciones en cada plan de licencia alojado en la nube. Gratis para el desarrollo sin límite de tiempo. Solo 300 transacciones con prueba. Instalemos los dos y comparemos el código. Paso 1: Instalación ## 1. Instalar la Biblioteca IronPDF Hay dos formas de instalar IronPDF en su proyecto, sin diferencia cuál adopte. ### 1.1. Descargar el DLL de IronPDF [Descargar IronPDF.dll](download-modal) y añadir su referencia a su proyecto. Después de esto, puede acceder fácilmente al espacio de nombres `IronPdf` de la siguiente manera: ```csharp using IronPdf; ``` Ahora, puede acceder fácilmente a las funciones y clases proporcionadas por IronPDF. ### 1.2 Instalar a través del Gestor de Paquetes NuGet * Consola del Gestor de Paquetes: Si está utilizando la Consola del Gestor de Paquetes, ejecute el siguiente comando: ```shell :ProductInstall ``` * Administrar Paquetes para la Solución: Si está utilizando la interfaz gráfica del [Gestor de Paquetes NuGet](https://www.nuget.org/packages/IronPdf), entonces busque `IronPDF` en la barra de búsqueda e instálelo. Instalar el PrizmDoc Viewer de Accusoft Hay dos partes de PrizmDoc Viewer, una es el lado del servidor llamado `PrizmDoc Server` que se comporta como una API RESTful. La otra es nuestro proyecto, con el que llegamos a esa API y obtenemos la respuesta. Acceder al PrizmDoc Server Como vemos por su nombre, es una aplicación del lado del servidor que obtiene la información básica del documento como solicitud (entrada) y convierte el documento a un archivo PDF, luego envía el archivo PDF convertido al cliente como respuesta (salida). Es el corazón técnico del producto, que es un motor de procesamiento y conversión de documentos. Podemos usarlo de dos maneras diferentes, sin diferencia cuál adoptes porque ambos tienen la misma estructura y técnicas de programación: 1. **Autoalojado:** Para esta opción, necesita organizar su servidor, y puede [Descargar PrizmDoc Server](https://www.accusoft.com/products/prizmdoc-suite/prizmdoc-viewer-trial/) y luego instalarlo. [Leer más](https://help.accusoft.com/PrizmDoc/v13.14/HTML/install-on-windows.html) sobre cómo instalar PrizmDoc Server en Windows. **Nota:** Necesita un mínimo de 32 GB de RAM y un CPU de 4 núcleos, de lo contrario, puede tener una mala experiencia. 2. **Alojado en la nube:** Es un servicio basado en la nube de PrizmDoc Viewer y no necesita organizar su servidor. Lo utilizaremos para nuestra comparación. Para hacer esto, [cree su cuenta](https://cloud.accusoft.com/signup) y luego se abrirá la página de inicio. Puede copiar `clave API` desde el menú de `Clave API`, veremos más adelante cómo usarla. Primero, veremos la estructura básica de cómo trabajar con PrizmDoc Viewer para convertir los documentos en un archivo PDF, y interactuaremos directamente con el `servidor de Accusoft` usando `WebClient()` en la aplicación de Consola de C#. **Nota:** El siguiente ejemplo es solo para comprensión conceptual de cómo PrizmDoc maneja los archivos PDF. Es un poco largo, así que no hay problema si omite este ejemplo y [pasa directamente a la comparación](#convert-html-to-a-pdf-file). Estructura de trabajo de Accusoft En este ejemplo, convertiremos el `myWebpage.html` al archivo `sample.pdf`. **Nota:** Tenemos que instalar la biblioteca `Newtonsoft.Json` y añadir su referencia en el proyecto. Primero, añada las siguientes bibliotecas a su proyecto: ```csharp using System; using System.IO; using System.Net; using System.Text; using System.Threading.Tasks; using Newtonsoft.Json.Linq; // Install Newtonsoft.Json via NuGet Package Manager ``` Luego, cree una variable pública `Clave API de Accusoft` y pegue su Clave API en ella de la siguiente manera: ```csharp static string ApiKey = "Your-API-KEY"; ``` Hay 3 pasos para tratar archivos PDF usando PrizmDoc Viewer: 1. Cargar un archivo al servidor de PrizmDoc. 2. Convertir el archivo cargado. 3. Descargar el archivo convertido del servidor PrizmDoc. Así que, haremos una función separada para cada paso. ```csharp static void Main(string[] args) { //---Upload file to Server--- JObject uploadResults = UploadToServer("myWebpage.html").Result; string fileID = (string)uploadResults.SelectToken("fileId"); string affinityToken = (string)uploadResults.SelectToken("affinityToken"); //---Convert the uploaded file to PDF--- JObject convertResults = Convert(affinityToken, fileID).Result; string processId = (string)convertResults.SelectToken("processId"); affinityToken = (string)convertResults.SelectToken("affinityToken"); //---Check the status that conversion is completed--- JObject convertStatusResults = ConvertStatus(processId, affinityToken).Result; string convertStatus = (string)convertStatusResults.SelectToken("state"); //---Continuously checking whether conversion completed--- while (!(convertStatus.Equals("complete"))) { System.Threading.Thread.Sleep(30000); convertStatusResults = ConvertStatus(processId, affinityToken).Result; convertStatus = (string)convertStatusResults.SelectToken("state"); } //---Download the converted file from server--- string newFileID = (string)convertStatusResults.SelectToken("output.results[0].fileId"); DownloadFromServer(affinityToken, newFileID, "sample.pdf").Wait(); Console.WriteLine("PDF file created successfully...!"); Console.ReadKey(); } ``` **1. Cargar archivo al servidor:** ```csharp public static async Task UploadToServer(string fileToUpload) { FileInfo input = new FileInfo(fileToUpload); if (input == null) { throw new ArgumentException("Missing parameter input", nameof(input)); } var fileName = input.Name; var endpoint = new Uri("https://api.accusoft.com/PCCIS/V1/WorkFile"); using (var client = new WebClient()) { client.Headers.Add("acs-api-key", ApiKey); client.Headers.Add("Content-Type", "application/octet-stream"); using (var reader = new BinaryReader(input.OpenRead())) { var data = reader.ReadBytes((int)reader.BaseStream.Length); var results = await client.UploadDataTaskAsync(endpoint, "POST", data); string getResult = Encoding.ASCII.GetString(results); return JObject.Parse(getResult); } } } ``` **2. Convertir el archivo cargado a PDF:** ```csharp public static async Task Convert(string affinityToken, string fileID) { var endpoint = new Uri("https://api.accusoft.com/v2/contentConverters"); using (var client = new WebClient()) { client.Headers.Add("Content-Type", "application/json"); client.Headers.Add("acs-api-key", ApiKey); client.Headers.Add("Accusoft-Affinity-Token", affinityToken); JObject myJson = new JObject( new JProperty("input", new JObject( new JProperty("sources", new JArray( new JObject( new JProperty("fileId", fileID) ) ) ), new JProperty("dest", new JObject( new JProperty("format", "pdf") ) ) ) ) ); string results = await client.UploadStringTaskAsync(endpoint, "POST", myJson.ToString()); return JObject.Parse(results); } } ``` El siguiente JSON es el valor resultante del objeto `myJson`: ```json { "input": { "sources": [ {"fileId": "Auto Generated FileId Value"} ], "dest": { "format": "pdf" } } } ``` **Verificar el estado de si la conversión está completa o no** ```csharp public static async Task ConvertStatus(string processId, string affinityToken) { string endpoint = "https://api.accusoft.com/v2/contentConverters/" + processId; using (var client = new WebClient()) { client.BaseAddress = endpoint; client.Headers.Add("acs-api-key", ApiKey); client.Headers.Add("Accusoft-Affinity-Token", affinityToken); string results = await client.DownloadStringTaskAsync(endpoint); return JObject.Parse(results); } } ``` **3. Descargar el archivo convertido del servidor** ```csharp public static async Task DownloadFromServer(string affinityToken, string fileId, string outfile) { var endpoint = new Uri("https://api.accusoft.com/PCCIS/V1/WorkFile/" + fileId); using (var client = new WebClient()) { client.Headers.Add("acs-api-key", ApiKey); client.Headers.Add("Accusoft-Affinity-Token", affinityToken); FileInfo output = new FileInfo(outfile); using (var writeStream = output.Create()) { var results = await client.DownloadDataTaskAsync(endpoint); await writeStream.WriteAsync(results, 0, results.Length); } } } ``` ¡El ejemplo anterior requiere mucho esfuerzo! Para minimizar la carga de trabajo, Accusoft presentó una biblioteca .NET llamada [Accusoft.PrizmDocServerSDK](https://www.nuget.org/packages/Accusoft.PrizmDocServerSDK/), que es un contenedor alrededor de la API REST del Servidor PrizmDoc. Veamos cómo instalar y usar esta biblioteca en nuestro proyecto .NET Instalar el Accusoft.PrizmDocServerSDK Hay dos maneras de instalar el contenedor. * Consola del Gestor de Paquetes: Si está utilizando la consola del gestor de paquetes, entonces ejecute el siguiente comando: ```shell Install-Package Accusoft.PrizmDocServerSDK ``` * Administrar Paquetes para la Solución: Si está utilizando la GUI del Gestor de Paquetes NuGet, entonces busque `Accusoft.PrizmDocServerSDK` en la barra de búsqueda e instálelo. Ahora, puede acceder fácilmente al espacio de nombres `Accusoft.PrizmDocServer` y usarlo accediendo: ```csharp using Accusoft.PrizmDocServer; ``` Tutoriales sobre cómo hacer ## 2. IronPDF vs Código de Comparación de PrizmDoc Viewer Después de leer la introducción e instalación de ambos componentes, ahora es el momento de trabajar con ambos componentes. Para esto, tomaremos algunos casos de uso y los implementaremos usando ambos componentes. Esperamos que esto proporcione una forma de entender fácilmente ambas estructuras de programación y concluyamos cuál es la mejor para su proyecto. ## 3. Convertir HTML a Archivo PDF En nuestra primera comparación, tomemos el caso de uso de que tenemos una página web llamada `myWebPage.html` y queremos crear un archivo PDF a partir de ella, luego guardarlo en la ubicación de destino. ### 3.1. IronPDF HTML a PDF ```csharp using IronPdf; static void Main(string[] args) { // Create rendering converter var converter = new ChromePdfRenderer(); // Render HTML file to PDF using var PDF = converter.RenderHTMLFileAsPdf("myWebPage.html"); // Save to target location PDF.SaveAs("sample.pdf"); } ``` El código anterior creará un archivo `sample.pdf` y lo guardará en la carpeta *`bin>debug`* del proyecto. También puede especificar cualquier ruta como esta: `PDF.SaveAs("E:/sample.pdf");` [Leer más](/docs/#sample-html-file-to-pdf) sobre cómo trabajar con IronPDF para tratar con archivos PDF. Ahora, haremos la misma tarea usando el PrizmDoc Viewer, para que nuestra comparación sea fácil. ### 3.2. PrizmDoc Viewer HTML a PDF En la instalación de PrizmDoc Viewer, ya discutimos cómo obtener la `Clave API de Accusoft`, y ahora veremos cómo usarla. Primero, enviamos una solicitud al servidor de PrizmDoc y obtenemos una respuesta de él. Este proceso tomará un tiempo, por lo que necesitamos usar Programación Asíncrona. **Nota:** Asegúrese de que su sistema esté conectado a internet mientras crea archivos PDF usando servicios en la nube de PrizmDoc Viewer. ```csharp using Accusoft.PrizmDocServer; using Accusoft.PrizmDocServer.Conversion; static void Main(string[] args) { ChromePdfRenderer().GetAwaiter().GetResult(); } private static async Task ChromePdfRenderer() { // Instantiate PrizmDocServerClient object var prizmDocServer = new PrizmDocServerClient("https://api.accusoft.com", "Your-API-KEY"); // Specify HTML file and convert it to a PDF. ConversionResult result = await prizmDocServer.ConvertToPdfAsync("myWebPage.html"); // Save PDF file to the target location await result.RemoteWorkFile.SaveAsync("sample.pdf"); } ``` [Leer más](https://github.com/Accusoft/PrizmDocServerDotNetSDK/tree/master/Demos) sobre cómo trabajar con PrizmDoc Viewer. ### 3.3. Comparación de Código de HTML a PDF Vemos en estos ejemplos que IronPDF es un enfoque más simple para crear archivos PDF y no requiere tanto tiempo. ## 4. Imagen a PDF En esta comparación, tomamos un caso de uso en el que necesitamos crear un archivo PDF por la [Imagen](https://www.google.com/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png), y existe en nuestra carpeta `debug` del proyecto. Empecemos con IronPDF. ### 4.1. IronPDF Imagen a PDF ```csharp using IronPdf; static void Main(string[] args) { // Specify the image to be converted using var converted = ImageToPdfConverter.ImageToPdf("google.png"); // Save PDF file to the target location converted.SaveAs("sample.pdf"); } ``` **Salida:** Esta captura de pantalla es de un archivo PDF recién creado `sample.pdf` usando el código anterior: Podemos ver lo fácil que es crear un archivo PDF a partir de una imagen usando IronPDF. Ahora, haremos la misma tarea usando PrizmDoc Viewer y veremos su archivo PDF generado. ### 4.2. PrizmDoc Viewer Imagen a PDF ```csharp using Accusoft.PrizmDocServer; using Accusoft.PrizmDocServer.Conversion; static void Main(string[] args) { ImageToPDF().GetAwaiter().GetResult(); } private static async Task ImageToPDF() { // Instantiate PrizmDocServerClient object var prizmDocServer = new PrizmDocServerClient("https://api.accusoft.com", "Your-API-KEY"); // Specify the image to be converted ConversionResult results = await prizmDocServer.ConvertToPdfAsync("google.png"); // Save PDF file to the target location await results.RemoteWorkFile.SaveAsync("sample.pdf"); } ``` **Salida:** This screenshot is of a newly created PDF file `sample.pdf` from the above code: ### 4.3. Comparación de Código de Imagen a PDF Podemos ver que solo necesitamos escribir 2 líneas de código simple usando IronPDF. Por otro lado, usando el servidor PrizmDoc, tenemos que escribir muchas líneas de código con Programación Asíncrona. La salida de IronPDF también proporciona automáticamente un documento de página completa utilizable. ## 5. Fusionar Archivos PDF En esta comparación, supongamos que tenemos tres archivos PDF llamados `A.pdf`, `B.pdf`, y `C.pdf`. Queremos fusionarlos en un solo archivo PDF, y podemos hacer esta tarea usando ambos componentes. Primero, veremos cómo realizar esta tarea usando IronPDF. ### 5.1. IronPDF Fusionar Archivos PDF ```csharp using IronPdf; using System.Collections.Generic; static void Main(string[] args) { // Create rendering converter var Renderer = new IronPdf.ChromePdfRenderer(); // Create a list of pdf files var PDFs = new List(); PDFs.Add(PdfDocument.FromFile("A.pdf")); PDFs.Add(PdfDocument.FromFile("B.pdf")); PDFs.Add(PdfDocument.FromFile("C.pdf")); // Merge the list of pdf file using PdfDocument PDF = PdfDocument.Merge(PDFs); // Save merged file to the target location PDF.SaveAs("sample.pdf"); foreach(var pdf in PDFs) { pdf.Dispose(); } } ``` El código anterior creará un archivo `sample.pdf`, que es la combinación de `A.pdf`, `B.pdf`, y `C.pdf`. Ahora, haremos la misma tarea usando PrizmDoc Viewer. ### 5.2. PrizmDoc Viewer Fusionar Archivos PDF ```csharp using System.Threading.Tasks; using Accusoft.PrizmDocServer; using Accusoft.PrizmDocServer.Conversion; static void Main(string[] args) { PdfMerge().GetAwaiter().GetResult(); } private static async Task PdfMerge() { // Instantiate PrizmDocServerClient object var prizmDocServer = new PrizmDocServerClient("https://api.accusoft.com", "Your-API-KEY"); // Pass the list of pdf files to PrizmDoc Server ConversionResult result = await prizmDocServer.CombineToPdfAsync( new [] { new ConversionSourceDocument("A.pdf"), new ConversionSourceDocument("B.pdf"), new ConversionSourceDocument("C.pdf"), }); // Save merged file to the target location await result.RemoteWorkFile.SaveAsync("sample.pdf"); } ``` El código anterior también creará un archivo `sample.pdf`, que es la combinación de los archivos `A.pdf`, `B.pdf`, y `C.pdf`. ## 6. Encabezado y Pie de Página en PDF En esta comparación, supongamos que tenemos una página web simple llamada `myWebPage.html` que tiene el siguiente HTML y CSS: ```html Hello World..! Main Menu SubMenu 1 SubMenu 2 SubMenu 3 SubMenu 4 SubMenu 5 ``` Queremos convertir esta página web a un archivo PDF, estableciendo las siguientes propiedades de Encabezado y Pie de Página: * `Título de la Página` en el lado izquierdo del Encabezado, * `DateTime` en el lado derecho del Encabezado * `Número de Página de Páginas Totales` en el lado derecho del Pie de Página. Primero, veremos cómo trabajar con IronPDF para establecer el Encabezado y el Pie de Página. ### 6.1. IronPDF Encabezado y Pie de Página en PDF Para tratar con el Encabezado y Pie de Página de un archivo PDF, IronPDF proporciona una propiedad en la clase `ChromePdfRenderer` llamada `RenderingOptions` la cual se puede utilizar de la siguiente manera: * **Para Encabezado:** ```csharp ChromePdfRenderer_Obj.RenderingOptions.TextHeader = new TextHeaderFooter(); ``` * **Para Pie de Página:** ```csharp ChromePdfRenderer_Obj.RenderingOptions.TextFooter = new TextHeaderFooter(); ``` Podemos establecer las siguientes propiedades al inicializar `TextHeaderFooter()`: * **CenterText** para imprimir el texto en el centro del Encabezado o Pie de Página. * **LeftText** para imprimir el texto en el lado izquierdo del Encabezado o Pie de Página. * **RightText** para imprimir el texto en el lado derecho del Encabezado o Pie de Página. * **DrawDividerLine** dibuja una línea que separa el contenido de la página del Encabezado o Pie de Página. * **FontFamily** para especificar la familia de fuentes del Encabezado o Pie de Página. * **FontSize** para especificar el tamaño de fuente del Encabezado o Pie de Página. * **Spacing** ajusta el espacio entre el contenido de la página y el Encabezado o Pie de Página. Algunos atributos predefinidos son muy útiles para establecer el contenido del Encabezado o Pie de Página. Se puede escribir entre llaves `{ }` de la siguiente manera: * **{page}** imprime el número de página actual en el Encabezado o Pie de Página. * **{total-pages}** imprime el número total de páginas en el Encabezado o Pie de Página. * **{url}** se utiliza para imprimir la URL de la página renderizada. * **{date}** imprime la fecha actual en el Encabezado o Pie de Página. * **{time}** imprime la hora actual en el Encabezado o Pie de Página. * **{html-title}** imprime el título de la página web renderizada en el Encabezado o Pie de Página. * **{pdf-title}** imprime el título del documento en el Encabezado o Pie de Página. [Leer más](/tutorials/html-to-pdf/) en detalle sobre cómo trabajar con el Encabezado y Pie de Página usando IronPDF. Veamos el siguiente ejemplo para implementar el caso de uso y demostrar cómo usar las propiedades anteriores para establecer el Encabezado y el Pie de Página de un archivo PDF. ```csharp using IronPdf; static void Main(string[] args) { // Create rendering converter var converter = new ChromePdfRenderer(); // Setting Header properties converter.RenderingOptions.TextHeader = new TextHeaderFooter() { DrawDividerLine = true, LeftText = "Page Title", RightText = "{date} {time}", FontSize = 13 }; // Setting footer properties converter.RenderingOptions.TextFooter = new TextHeaderFooter() { RightText = "Page {page} of {total-pages}", FontSize = 12 }; // Specify the file to be converted using var PDF = converter.RenderHTMLFileAsPdf("myWebPage.html"); // Save to target location PDF.SaveAs("sample.pdf"); } ``` **Salida:** The screenshot of the newly created PDF file `sample.pdf` by the above code: Podemos ver qué simple es trabajar con el Encabezado y Pie de Página usando lenguaje intuitivo mientras creamos un archivo PDF usando IronPDF. Ahora, veremos cómo usar PrizmDoc Viewer para establecer el Encabezado y Pie de Página. ### 6.2. PrizmDoc Viewer Encabezado y Pie de Página en PDF PrizmDoc Viewer proporciona la clase `HeaderFooterOptions` para tratar con el Encabezado y Pie de Página, con las siguientes propiedades: * **Líneas** especifica la(s) línea(s) para Encabezado y Pie de Página (más claro cuando se understand el siguiente ejemplo), cada línea tiene las siguientes propiedades: * ***Izquierda*** imprime el texto en el lado izquierdo de la línea de Encabezado o Pie de Página. * ***Centro*** imprime el texto en el lado izquierdo de la línea de Encabezado o Pie de Página. * ***Derecha*** imprime el texto en el lado derecho de la línea de Encabezado o Pie de Página. * **FontFamily** para especificar la familia de fuentes del texto de Encabezado o Pie de Página. * **FontSize** para especificar el tamaño de fuente del texto de Encabezado o Pie de Página. * **Color** para especificar el color del texto de Encabezado o Pie de Página. [Leer más](https://help.accusoft.com/PrizmDoc/sdks/server/dotnet/v1/api/Accusoft.PrizmDocServer.Conversion.HeaderFooterLine.html) sobre cómo establecer Encabezado y Pie de Página de una página PDF usando el servidor PrizmDoc. Veamos cómo implementar nuestro caso de uso usando las propiedades anteriores. ```csharp using System.Threading.Tasks; using System.Collections.Generic; using Accusoft.PrizmDocServer; using Accusoft.PrizmDocServer.Conversion; static void Main(string[] args) { SetHeaderFooter().GetAwaiter().GetResult(); } private static async Task SetHeaderFooter() { // Instantiate PrizmDocServerClient object with Header and footer properties var prizmDocServer = new PrizmDocServerClient("https://api.accusoft.com", "Your-API-KEY"); ConversionResult result = await prizmDocServer.ConvertToPdfAsync( "myWebPage.html", header: new HeaderFooterOptions { Lines = new List { new HeaderFooterLine { Left = "Page Title", Right = DateTime.Now.ToString() } }, }, footer: new HeaderFooterOptions { Lines = new List { new HeaderFooterLine { Right = "Page {{pageNumber}} of {{pageCount}}" }, }, }); // Save to the target location await result.RemoteWorkFile.SaveAsync("sample.pdf"); } ``` **Salida:** La captura de pantalla del archivo PDF recién creado por el código anterior: ### 6.3. Comparación de Código de Encabezado y Pie de Página en PDF Podemos ver que IronPDF ofrece más funciones para establecer propiedades de Encabezado y Pie de Página con una estructura de programación simple en comparación con PrizmDoc Viewer. También se sugiere que el archivo PDF generado por IronPDF es más legible y atractivo que el archivo generado por PrizmDoc Viewer. ## 7. Convertir Páginas de PDF a Imágenes Tomemos un caso de uso más: tenemos un archivo PDF simple llamado `Sample_PDF.pdf` que tiene solo 2 páginas. Página1 Página2 Imagen de Página1 Imagen de Página2 Página1 Página2 Y necesitamos crear una imagen de cada página. Primero, veremos cómo realizar esta tarea usando IronPDF. ### 7.1. IronPDF Convertir PDF a Imagen ```csharp using IronPdf; static void Main(string[] args) { // Specify file to be converted var pdf = PdfDocument.FromFile("Sample_PDF.pdf"); // Save images to the target location pdf.RasterizeToImageFiles("image_*.png"); } ``` **Salida:** El código anterior creará las siguientes dos imágenes `.png`: Página1 Página2 Imagen de Página1 Imagen de Página2 Página1 Página2 Podemos ver lo bastante simple que es crear una imagen de cada página PDF usando IronPDF. Ahora, haremos la misma tarea usando PrizmDoc Viewer. ### 7.2. PrizmDoc Viewer PDF a Imagen ```csharp using System.Linq; using System.Collections.Generic; using System.Threading.Tasks; using Accusoft.PrizmDocServer; using Accusoft.PrizmDocServer.Conversion; static void Main(string[] args) { PdfToImage().GetAwaiter().GetResult(); } private static async Task PdfToImage() { // Instantiate PrizmDocServerClient object var prizmDocServer = new PrizmDocServerClient("https://api.accusoft.com", "Your-API-KEY"); // Convert PDF file to images IEnumerable results = await prizmDocServer.ConvertAsync("Sample_PDF.pdf", DestinationFileFormat.Png); // Save each image. for (int i = 0; i < results.Count(); i++) { await results.ElementAt(i).RemoteWorkFile.SaveAsync($"page-{i + 1}.png"); } } ``` **Salida:** El código anterior también creará las siguientes dos imágenes `.png`: Página1 Página2 Imagen de Página1 Imagen de Página2 Página1 Página2 ### 7.3. Comparación de Código de PDF a Imagen Comparado con PrizmDoc Viewer, usando IronPDF podemos fácilmente crear la imagen de cada página con las menores líneas de código incluso sin iterar las páginas. ### Usar Bootstrap 5 con IronPDF para Tablas de Datos El motor de renderizado V8 de Chrome de IronPDF proporciona un soporte excepcional para tablas de datos Bootstrap 5, permitiendo que genere informes PDF profesionales con diseños tabulares complejos. Este ejemplo demuestra encabezados en degradado, distintivos de estado, controles de paginación, y métricas de resumen - características que muestran la ventaja de IronPDF sobre visores PDF tradicionales como PrizmDoc. ```csharp using IronPdf; var renderer = new ChromePdfRenderer(); string dataTableReport = @" Sales Performance Report Q4 2024 Regional Analysis Export Filter Sort Showing 1-10 of 48 results Region Revenue Units Sold Growth Status Action North America USA, Canada, Mexico $4,280,000 12,450 ↑ 18.5% Exceeding Details Europe EU, UK, Switzerland $3,650,000 10,890 ↑ 12.3% On Track Details Asia Pacific Japan, Australia, Singapore $2,940,000 8,320 ↑ 24.7% Growing Details Latin America Brazil, Argentina, Chile $1,580,000 4,670 ↑ 8.9% Stable Details Middle East UAE, Saudi Arabia, Israel $980,000 2,890 ↓ 3.2% Review Details Total $13,430,000 39,220 ↑ 14.8% 10 per page 25 per page 50 per page Previous 1 2 3 Next $13.4M Total Revenue 39,220 Units Sold 14.8% Growth Rate 5 Active Regions "; var pdf = renderer.RenderHtmlAsPdf(dataTableReport); pdf.SaveAs("data-table-report.pdf"); ``` Este código genera un informe de tabla de datos sofisticado con encabezados en degradado, tablas receptivas, distintivos de estado, y métricas de resumen. El motor de renderizado de Chrome de IronPDF preserva todo el estilo Bootstrap incluyendo efectos de tabla hover, colores de distintivo, y controles de paginación - capacidades que van más allá de los visores PDF tradicionales. **Ventajas principales vs PrizmDoc Viewer:** - Renderizado directo de tablas HTML sin conversión - Soporte completo para componentes Bootstrap - Fondos degradados y CSS moderno - Diseños de tablas receptivas con paginación adecuada Para más detalles sobre la generación de PDF con Bootstrap, vea [Guía de HTML a PDF con Bootstrap](/how-to/html-to-pdf-bootstrap-guide/). ## 8. Precios de Licencia En las comparaciones anteriores, vemos la estructura de trabajo técnica y las funciones proporcionadas de ambos componentes. Ahora veremos el precio de licencia de ambos componentes. Es muy importante porque siempre intentamos hacer lo mejor para cumplir con nuestros requisitos utilizando el presupuesto mínimo. ### 8.1. Opciones de Licencia de IronPDF La licencia de IronPDF comienza desde **`$699`** para un único proyecto con un desarrollador. Si es un ingeniero en una empresa o una agencia que proporciona trabajo a múltiples clientes, las licencias comienzan desde $699 y se pueden ajustar dependiendo del tamaño del equipo y número de proyectos. La licencia siguiente requiere solo un pago único. Página1 Página2 Imagen de Página1 Imagen de Página2 Página1 Página2 Número de Desarrolladores Precio 1-5 $699 6-10 $799 11-20 $899 21-50 $1,199 Unlimited $1,199 * Para empresas con múltiples ubicaciones, la licencia comienza desde **$1199.** * Para servicios SaaS, las licencias comienzan desde **$1099.** * Para redistribución OEM libre de regalías, las licencias comienzan desde **$1599.** **Nota:** Todos los paquetes de licencias anteriores vienen con **1 año de soporte y actualizaciones**. [Leer Más](/licensing/) sobre todos los paquetes de licencias proporcionados de IronPDF. ### 8.2. Opciones de Licencia de PrizmDoc Viewer Opción Autohospedada Si gestionas tu propio servidor, entonces el precio de la licencia es de **$7,900**/anualmente con soporte estándar. [Leer Más](https://www.accusoft.com/products/prizmdoc-suite/prizmdoc-viewer/#pricing) sobre toda la información de paquetes proporcionados de PrizmDoc Viewer. Opción Basada en la Nube Esta licencia cubre los servicios basados en la nube de PrizmDoc Viewer, que se escala con base en el número de transacciones. **Terminologías:** *`Transacción`* significa que accedemos al servidor de PrizmDoc Viewer y obtenemos el resultado (documento generado). *`Cubos Prepagados`* significa que pagas una vez y obtienes las transacciones, las cuales no expiran. Página1 Página2 Imagen de Página1 Imagen de Página2 Página1 Página2 Nro de Transacciones Cubos Prepagados Mensual Anual 200 $18 1,000 $89 2,000 $119 6,000 $254 $169 $1,859 (6,000 Transactions/Month) 12,000 $434 $289 $3,179 (12,000 Transactions/Month) 25,000 $699 $499 $5,459 (25,000 Transactions/Month) 50,000 $1,199 $799 $8,789 (50,000 Transactions/Month) 100,000 $1,199 $1,199 $10,989 (100,000 Transactions/Month) 200,000 $2,549 $1,699 $19,188 (200,000 Transactions/Month) 300,000 $3,299 $2,199 $25,188 (300,000 Transactions/Month 400,000 $4,049 $2,699 $31,188 (400,000 Transactions/Month) 500,000 $4,799 $3,199 $37,188 (500,000 Transactions/Month) Acceso Rápido al Tutorial Obtén el Manual de Inicio Rápido de C# IronPDF Hemos creado una guía de recursos PDF gratuita para ayudar a facilitar el desarrollo de PDFs en .NET, con tutoriales de funciones comunes y ejemplos para manipular, editar, generar y guardar PDFs en C# y VB.NET para tu proyecto. Download the Guide Explora la Referencia de API IronPDF Explora la Referencia de API para la Biblioteca C# de IronPDF, incluyendo detalles de todas las características, clases, campos de métodos, espacios de nombres y enumeraciones de IronPDF. View the API Reference Por favor notaEl Visor PrizmDoc de Accusoft es una marca registrada de su respectivo propietario. Este sitio no está afiliado, patrocinado ni aprobado por el Visor PrizmDoc de Accusoft. Todos los nombres de producto, logotipos y marcas son propiedad de sus respectivos dueños. Las comparaciones son solo para fines informativos y reflejan información públicamente disponible en el momento de la redacción. Preguntas Frecuentes ¿Cómo puedo convertir HTML a PDF en C#? Puedes usar el método RenderHtmlAsPdf de IronPDF para convertir cadenas de HTML en PDFs. También puedes convertir archivos HTML a PDFs usando RenderHtmlFileAsPdf. ¿Cuáles son las ventajas de usar IronPDF en lugar de PrizmDoc Viewer para la conversión de PDF? IronPDF ofrece una solución local de renderizado de PDFs sencilla, permitiendo trabajar sin conexión sin necesidad de programación asincrónica. Por el contrario, PrizmDoc Viewer opera a través de una API REST, requiriendo conectividad a internet para la interacción con el servidor remoto. ¿Puedo combinar múltiples documentos PDF utilizando una biblioteca PDF? Sí, con IronPDF, puedes combinar múltiples PDFs usando el método MergePdf, lo que te permite combinar documentos sin problemas. ¿Cómo maneja IronPDF la conversión de PDF a imagen? IronPDF te permite convertir fácilmente páginas de PDF a imágenes usando sus métodos incorporados, ofreciendo un enfoque más sencillo en comparación con otros programas. ¿Cuáles son las opciones de personalización de encabezado y pie de página en IronPDF? IronPDF proporciona funciones extensas para establecer propiedades de encabezado y pie de página con una estructura de programación simple, facilitando la personalización de tus documentos. ¿Es IronPDF adecuado para el procesamiento de PDF sin conexión? Sí, IronPDF admite el procesamiento de PDF sin conexión, lo que significa que puedes trabajar sin conectividad a internet, a diferencia de algunas otras soluciones que requieren interacción con el servidor remoto. ¿Cuál es la estructura de costos para las licencias de IronPDF? Las licencias de IronPDF comienzan en $699 para un solo proyecto con un desarrollador, con opciones escalables para empresas y servicios SaaS, ofreciendo una solución de pago único y rentable. ¿Puedo desarrollar con IronPDF de forma gratuita? Sí, IronPDF es gratis para el desarrollo sin límite de tiempo y ofrece una prueba de implementación de 30 días para lanzar tu proyecto. ¿Cómo maneja PrizmDoc Viewer la conversión de HTML a PDF? PrizmDoc Viewer utiliza una API REST para la conversión de HTML a PDF, requiriendo programación asincrónica y conectividad a internet para la interacción con el servidor remoto. ¿Cuáles son los requisitos del sistema para alojar un Servidor PrizmDoc? El auto-alojamiento del Servidor PrizmDoc requiere un mínimo de 32 GB de RAM y un CPU de 4 núcleos, para adaptarse a sus necesidades de procesamiento. ¿IronPDF es totalmente compatible con .NET 10? Sí. IronPDF es compatible con .NET 10 (así como con .NET 9, 8, 7, 6, .NET Core, .NET Standard y .NET Framework). Se instala mediante NuGet, funciona en Windows, Linux y macOS, y utiliza su renderizador nativo basado en Chrome para ofrecer una representación de HTML a PDF con una precisión de píxeles perfecta en aplicaciones .NET 10. Curtis Chau Chatea con el equipo de ingeniería ahora Escritor Técnico Curtis Chau tiene una licenciatura en Ciencias de la Computación (Carleton University) y se especializa en el desarrollo front-end con experiencia en Node.js, TypeScript, JavaScript y React. Apasionado por crear interfaces de usuario intuitivas y estéticamente agradables, disfruta trabajando con frameworks modernos y creando manuales bien ...Leer más Artículos Relacionados Publicadonoviembre 13, 2025 Comparando HTML a PDF en C# de código abierto vs. IronPDF Compare bibliotecas open source de HTML a PDF con IronPDF para C#. Descubra qué solución ofrece las mejores capacidades de generación de PDF para sus proyectos .NET. Leer más Publicadooctubre 27, 2025 ¿Qué biblioteca de PDF de ASP.NET Core ofrece el mejor valor? Descubre la mejor biblioteca PDF para aplicaciones ASP.NET Core. Compara el motor de Chrome de IronPDF con las alternativas de Aspose y Syncfusion. Leer más Publicadooctubre 27, 2025 Cómo crear un PDF con Aspose C# VS IronPDF Aprende a crear PDFs usando Aspose C# VS IronPDF con esta guía paso a paso diseñada para desarrolladores. Leer más Ejemplo de HTML a PDF con PDFSharp y Comparación de TutorialesUna Comparación entre IronPDF y PD... Pruebe IronPDF gratis Configúrese en 5 minutos Instalar con NuGet Versión: 2025.11 Install-Package IronPdf nuget.org/packages/IronPdf/ En el Explorador de Soluciones, haga clic derecho en Referencias, Administrar Paquetes NuGet Seleccione Examinar y busque "IronPdf" Seleccione el paquete e instale Descargar DLL Versión: 2025.11 Descargar ahora o descargue el Instalador de Windows aquí. Descargue y descomprima IronPDF en una ubicación como ~/Libs dentro del directorio de su solución En el Explorador de Soluciones de Visual Studio, haga clic derecho en Referencias. Seleccione Examinar, "IronPdf.dll" Licencias desde $749 15 1000 1 Ahora ha instalado con Nuget Su navegador ahora está descargando IronPDF Próximo paso: Comenzar prueba gratuita de 30 días No se requiere tarjeta de crédito Pruebe en un entorno en vivoProducto totalmente funcionalSoporte técnico 24/5 Obtenga su Clave de Prueba de 30 días gratis al instante. Gracias.Si desea hablar con nuestro equipo de licencias: El formulario de prueba fue enviadocon éxito.Su clave de prueba debería estar en el correo electrónico.Si no es así, por favor contactesupport@ironsoftware.com Programar una llamada ¿Tiene alguna pregunta? Póngase en contacto con nuestro equipo de desarrollo. No se requiere tarjeta de crédito ni creación de cuenta 15 1000 1 Ahora ha instalado con Nuget Su navegador ahora está descargando IronPDF Próximo paso: Comenzar prueba gratuita de 30 días No se requiere tarjeta de crédito Pruebe en un entorno en vivoProducto totalmente funcionalSoporte técnico 24/5 Gracias. Vea sus opciones de licencia: Gracias.Si desea hablar con nuestro equipo de licencias: Ver licencias Programar una llamada ¿Tiene alguna pregunta? Contáctenos con nuestro equipo de desarrollo. ¿Tiene alguna pregunta? Póngase en contacto con nuestro equipo de desarrollo. Comience gratis No se requiere tarjeta de crédito Probar en un entorno en vivo Probar en producción sin marcas de agua.Funciona donde lo necesites. Producto completamente funcional Obtén 30 días de producto completamente funcional.Instálalo y ejecútalo en minutos. Soporte técnico 24/5 Acceso completo a nuestro equipo de soporte técnico durante tu prueba del producto Obtén tu clave de prueba gratuita de 30 días al instante. No se requiere tarjeta de crédito ni creación de cuenta El formulario de prueba fue enviadocon éxito. Tu clave de prueba debería estar en el correo electrónico.Si no lo está, por favor contacta asupport@ironsoftware.com Confiado por millones de ingenieros en todo el mundo Comience gratis No se requiere tarjeta de crédito Probar en un entorno en vivo Probar en producción sin marcas de agua.Funciona donde lo necesites. Producto completamente funcional Obtén 30 días de producto completamente funcional.Instálalo y ejecútalo en minutos. Soporte técnico 24/5 Acceso completo a nuestro equipo de soporte técnico durante tu prueba del producto Obtén tu clave de prueba gratuita de 30 días al instante. Instalar con NuGet Ver licencias Licencias desde $749. ¿Tienes una pregunta? Ponte en contacto. Confiado por millones de ingenieros en todo el mundo Hablar con Ventas Reserva una Consulta Sin Compromiso Cómo podemos ayudar: Consulta sobre tu flujo de trabajo y puntos de dolorObserva cómo otras empresas resuelven sus necesidades de documentos .NETTodas tus preguntas respondidas para asegurarte de que tienes toda la información que necesitas. (Sin compromiso alguno.)Solicita una cotización a medida Obtén tu Consulta Sin Compromiso Completa el formulario a continuación o envía un correo a sales@ironsoftware.com Tus detalles siempre serán mantenidos confidenciales. Confiado por más de 2 millones de ingenieros en todo el mundo Reserve demostración en vivo gratis Reserve una demostración personal de 30 minutos. Sin contrato, sin datos de tarjeta, sin compromisos. Así es como será: Demostración en vivo de nuestro producto y características claveRecomendaciones de características del proyectoTodas sus preguntas serán respondidas para asegurarse de que tiene toda la información que necesita.(Sin compromiso alguno.) ELEGIR HORA SU INFO Reserve su Demostración en Vivo gratuita Confiado por más de 2 millones de ingenieros en todo el mundo Información Legal Derechos de Autor © Iron Software 2013-2025 Términos Privacidad Cookie Derechos de Autor © Iron Software 2013-2025 Términos Privacidad Cookie
Publicadonoviembre 13, 2025 Comparando HTML a PDF en C# de código abierto vs. IronPDF Compare bibliotecas open source de HTML a PDF con IronPDF para C#. Descubra qué solución ofrece las mejores capacidades de generación de PDF para sus proyectos .NET. Leer más
Publicadooctubre 27, 2025 ¿Qué biblioteca de PDF de ASP.NET Core ofrece el mejor valor? Descubre la mejor biblioteca PDF para aplicaciones ASP.NET Core. Compara el motor de Chrome de IronPDF con las alternativas de Aspose y Syncfusion. Leer más
Publicadooctubre 27, 2025 Cómo crear un PDF con Aspose C# VS IronPDF Aprende a crear PDFs usando Aspose C# VS IronPDF con esta guía paso a paso diseñada para desarrolladores. Leer más
Producto completamente funcional Obtén 30 días de producto completamente funcional.Instálalo y ejecútalo en minutos.
Soporte técnico 24/5 Acceso completo a nuestro equipo de soporte técnico durante tu prueba del producto
Producto completamente funcional Obtén 30 días de producto completamente funcional.Instálalo y ejecútalo en minutos.
Soporte técnico 24/5 Acceso completo a nuestro equipo de soporte técnico durante tu prueba del producto