Saltar al pie de página
USANDO IRONPDF

API de PDF for .NET Core: Generar y editar PDFs en C#

 Descripción general de la API PDF de IronPDF .NET Core que muestra el editor de código con conversión de HTML a PDF y el documento de salida uno al lado del otro

IronPDF es una API de PDF for .NET Core y .NET 10 que genera, convierte y edita documentos PDF a través de código C#. Instale el paquete NuGet , cree una instancia ChromePdfRenderer y produzca archivos PDF a partir de cadenas HTML, URL activas o archivos existentes en unas pocas líneas.

La generación de PDF es un requisito estándar en las aplicaciones .NET Core para facturas, informes, contratos y documentos de cumplimiento. El desafío es encontrar una biblioteca que represente HTML con precisión, se integre limpiamente con ASP.NET Core y Blazor, produzca resultados consistentes en Windows, Linux y macOS, y maneje operaciones avanzadas como firmas digitales y protección con contraseña sin requerir herramientas separadas. Esta guía recorre la API de PDF .NET Core de IronPDF desde la instalación hasta las operaciones de documentos más comunes, cada una con ejemplos de código C# funcionales.

¿Cómo empezar a utilizar IronPDF en .NET Core?

Instale IronPDF desde NuGet mediante la consola del administrador de paquetes o la CLI de .NET :

# Package Manager Console
Install-Package IronPdf

# .NET CLI
dotnet add package IronPdf
# Package Manager Console
Install-Package IronPdf

# .NET CLI
dotnet add package IronPdf
SHELL

Después de la instalación, agregue su clave de licencia al iniciar la aplicación en Program.cs:

using IronPdf;

// Configure your license key before any IronPDF operations
License.LicenseKey = "YOUR-LICENSE-KEY";
using IronPdf;

// Configure your license key before any IronPDF operations
License.LicenseKey = "YOUR-LICENSE-KEY";
$vbLabelText   $csharpLabel

Hay una prueba gratuita disponible para evaluación sin tarjeta de crédito. IronPDF es compatible con .NET 10, .NET 9, .NET 8, .NET Framework 4.6.2+ y todas las versiones principales de .NET Core . La biblioteca se ejecuta en Windows, macOS y Linux sin dependencias de tiempo de ejecución adicionales, lo que la hace adecuada para implementaciones en contenedores y entornos de nube, incluidos Azure , Docker y AWS.

Para proyectos ASP.NET Core , registre los servicios de IronPDF en Program.cs antes de compilar la aplicación, luego inyecte ChromePdfRenderer a través del contenedor de inyección de dependencia estándar. IronPDF se integra con los tipos de proyectos ASP.NET Core , incluidos Web API, MVC, Razor Pages y Blazor Server. El paquete NuGet se instala como una única dependencia sin necesidad de bibliotecas de ejecución nativas ni ejecutables externos, lo que mantiene su canalización de CI y las imágenes de contenedor sencillas. No se requiere ninguna configuración adicional para las implementaciones de Linux o macOS más allá del SDK .NET estándar.

Debido a que ChromePdfRenderer es seguro para subprocesos, puedes registrarlo como un singleton y compartirlo entre los controladores de solicitudes. En escenarios de alto rendimiento, cree un grupo de instancias de renderizador o utilice los métodos de renderizado asíncrono (RenderHtmlAsPdfAsync, RenderUrlAsPdfAsync) para evitar bloquear los subprocesos de solicitud mientras se ejecuta la generación de PDF. La página de licencias de IronPDF cubre los límites de implementación y subprocesos simultáneos para entornos de producción.

¿Cómo generar archivos PDF a partir de HTML en C#?

La conversión de HTML a PDF es el uso más común de una API de PDF .NET . ChromePdfRenderer de IronPDF convierte cadenas HTML, archivos locales o URL activas conservando los estilos CSS, las fuentes, la salida de JavaScript y las imágenes a medida que se procesan en Chrome.

using IronPdf;

// Create the renderer and define HTML content with full CSS support
var renderer = new ChromePdfRenderer();
var html = @"<html>
<head>
    <style>
        body { font-family: Arial; font-size: 14px; margin: 40px; }
        h1 { color: #2c3e50; border-bottom: 2px solid #3498db; }
        table { border-collapse: collapse; width: 100%; margin-top: 16px; }
        td, th { border: 1px solid #ddd; padding: 10px; text-align: left; }
        th { background: #3498db; color: white; }
    </style>
</head>
<body>
    <h1>Sales Report - Q4 2025</h1>
    <p>Generated on: " + DateTime.Now.ToString("MMMM dd, yyyy") + @"</p>
    <table>
        <tr><th>Product</th><th>Units Sold</th><th>Revenue</th></tr>
        <tr><td>Widget A</td><td>1,200</td><td>$24,000</td></tr>
        <tr><td>Widget B</td><td>850</td><td>$17,000</td></tr>
    </table>
</body>
</html>";

var document = renderer.RenderHtmlAsPdf(html);
document.SaveAs("sales-report.pdf");
using IronPdf;

// Create the renderer and define HTML content with full CSS support
var renderer = new ChromePdfRenderer();
var html = @"<html>
<head>
    <style>
        body { font-family: Arial; font-size: 14px; margin: 40px; }
        h1 { color: #2c3e50; border-bottom: 2px solid #3498db; }
        table { border-collapse: collapse; width: 100%; margin-top: 16px; }
        td, th { border: 1px solid #ddd; padding: 10px; text-align: left; }
        th { background: #3498db; color: white; }
    </style>
</head>
<body>
    <h1>Sales Report - Q4 2025</h1>
    <p>Generated on: " + DateTime.Now.ToString("MMMM dd, yyyy") + @"</p>
    <table>
        <tr><th>Product</th><th>Units Sold</th><th>Revenue</th></tr>
        <tr><td>Widget A</td><td>1,200</td><td>$24,000</td></tr>
        <tr><td>Widget B</td><td>850</td><td>$17,000</td></tr>
    </table>
</body>
</html>";

var document = renderer.RenderHtmlAsPdf(html);
document.SaveAs("sales-report.pdf");
$vbLabelText   $csharpLabel

Documento PDF de salida

Proyecto de Visual Studio ejecutando la conversión de HTML a PDF de IronPDF que produce un informe de ventas formateado con una tabla de datos con estilo

El ChromePdfRenderer devuelve un objeto PdfDocument que puede guardar en una ruta de archivo, exportar a un byte[] para respuestas HTTP o escribir en un MemoryStream para procesamiento en memoria. El renderizador respeta todas las propiedades CSS, incluidas fuentes personalizadas, flexbox, diseños de cuadrícula, consultas de medios y reglas @page para el control de márgenes y tamaño de página. Para las plantillas HTML almacenadas en el disco junto con recursos CSS y de imagen, llame a RenderHtmlFileAsPdf con la ruta del archivo en lugar de pasar una cadena en línea. IronPDF resuelve las rutas de activos relativas al directorio del archivo, por lo que las hojas de estilo vinculadas y las imágenes locales aparecen en la salida sin configuración adicional.

Para las aplicaciones que necesitan capturar páginas web en vivo, use RenderUrlAsPdfAsync para capturar cualquier URL mientras ejecuta JavaScript:

using IronPdf;

var renderer = new ChromePdfRenderer();

// Render a live URL including all JavaScript-rendered content
var document = await renderer.RenderUrlAsPdfAsync("https://example.com/monthly-report");
document.SaveAs("monthly-report.pdf");

// Return PDF bytes in an ASP.NET Core controller
byte[] pdfBytes = document.BinaryData;
return File(pdfBytes, "application/pdf", "report.pdf");
using IronPdf;

var renderer = new ChromePdfRenderer();

// Render a live URL including all JavaScript-rendered content
var document = await renderer.RenderUrlAsPdfAsync("https://example.com/monthly-report");
document.SaveAs("monthly-report.pdf");

// Return PDF bytes in an ASP.NET Core controller
byte[] pdfBytes = document.BinaryData;
return File(pdfBytes, "application/pdf", "report.pdf");
$vbLabelText   $csharpLabel

La representación de URL espera a que se complete JavaScript antes de capturar, lo que garantiza que los gráficos, las tablas y las visualizaciones de datos cargados dinámicamente aparezcan correctamente en el PDF de salida. Puede configurar las opciones de renderizado para establecer los márgenes de página, el tamaño del papel, la orientación y el tiempo de espera de ejecución de JavaScript . También se pueden inyectar cookies de autenticación y encabezados HTTP personalizados en la solicitud antes de la representación, lo que permite capturar páginas que requieren una sesión iniciada.

¿Cómo configurar las opciones de diseño y renderizado de una página PDF?

La propiedad RenderingOptions en ChromePdfRenderer controla las dimensiones de la página, los márgenes, la orientación y el comportamiento de espera de JavaScript antes de que se ejecute cualquier llamada de renderizado. Establezca estas propiedades una vez en la instancia del renderizador y se aplicarán a todos los documentos que produce.

using IronPdf;

var renderer = new ChromePdfRenderer();

// Configure page layout before rendering
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;
renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Landscape;
renderer.RenderingOptions.MarginTop = 15;
renderer.RenderingOptions.MarginBottom = 15;
renderer.RenderingOptions.MarginLeft = 20;
renderer.RenderingOptions.MarginRight = 20;

// Wait for dynamic JavaScript content before capturing
renderer.RenderingOptions.WaitFor.RenderDelay(500);

var document = renderer.RenderHtmlAsPdf("<h1>Landscape Report</h1><p>Body content here.</p>");
document.SaveAs("landscape-report.pdf");
using IronPdf;

var renderer = new ChromePdfRenderer();

// Configure page layout before rendering
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;
renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Landscape;
renderer.RenderingOptions.MarginTop = 15;
renderer.RenderingOptions.MarginBottom = 15;
renderer.RenderingOptions.MarginLeft = 20;
renderer.RenderingOptions.MarginRight = 20;

// Wait for dynamic JavaScript content before capturing
renderer.RenderingOptions.WaitFor.RenderDelay(500);

var document = renderer.RenderHtmlAsPdf("<h1>Landscape Report</h1><p>Body content here.</p>");
document.SaveAs("landscape-report.pdf");
$vbLabelText   $csharpLabel

Los valores del tamaño del papel cubren formatos estándar, incluidos A4, A3, Carta, Legal y dimensiones personalizadas especificadas en milímetros. Las propiedades de margen aceptan valores en milímetros y se aplican independientemente a cada borde. La API WaitFor controla el tiempo de ejecución de JavaScript , lo que resulta útil cuando el HTML carga datos de forma asincrónica antes de representar gráficos o valores de tablas calculados. Para las páginas que utilizan reglas CSS @page, IronPDF respeta esas declaraciones y las aplica directamente. Consulte la referencia completa de opciones de renderizado para obtener la lista completa de propiedades, incluido el factor de zoom, el color de fondo y la selección de la versión PDF.

¿Cómo convertir archivos e imágenes DOCX a PDF?

Además de HTML, IronPDF convierte documentos DOCX, formatos de imagen comunes y archivos Markdown en PDF. Esto admite canales de procesamiento que aceptan múltiples tipos de entrada.

using IronPdf;

// Convert a Word document to PDF while preserving its formatting
var docxPdf = new DocxToPdfRenderer().RenderDocxAsPdf("contract.docx");
docxPdf.SaveAs("contract.pdf");

// Combine multiple images into a single multi-page PDF
var images = new[] { "page1.png", "page2.png", "page3.png" };
var imagePdf = ImageToPdfConverter.ImageToPdf(images);
imagePdf.SaveAs("scanned-document.pdf");
using IronPdf;

// Convert a Word document to PDF while preserving its formatting
var docxPdf = new DocxToPdfRenderer().RenderDocxAsPdf("contract.docx");
docxPdf.SaveAs("contract.pdf");

// Combine multiple images into a single multi-page PDF
var images = new[] { "page1.png", "page2.png", "page3.png" };
var imagePdf = ImageToPdfConverter.ImageToPdf(images);
imagePdf.SaveAs("scanned-document.pdf");
$vbLabelText   $csharpLabel

Ejemplo de entrada DOCX vs. salida PDF

Comparación lado a lado del documento Word original y la salida PDF convertida con IronPDF que muestra el formato y los estilos de tabla conservados

La función de conversión de DOCX a PDF conserva los estilos de párrafo, tablas, encabezados, pies de página, imágenes incrustadas y listas del documento Word de origen. El convertidor de imágenes a PDF acepta JPEG, PNG, TIFF, BMP y GIF, optimiza automáticamente el tamaño del archivo de salida y admite la combinación de varias imágenes en un solo documento paginado. Ambos convertidores devuelven una instancia estándar PdfDocument, por lo que puedes encadenarlos con operaciones de edición como fusión, firma o marca de agua. Para los archivos DOCX generados por Microsoft Word , el convertidor maneja estructuras de tablas complejas e imágenes incrustadas manteniendo la jerarquía original de párrafos y encabezados.

¿Cómo agregar firmas digitales y campos de formulario?

Los flujos de trabajo de documentos de producción a menudo requieren firmas criptográficas para garantizar la autenticidad y campos de formulario interactivos para la recopilación de datos. IronPDF proporciona firmas digitales y compatibilidad con formularios PDF a través de la misma API.

using IronPdf;
using IronPdf.Signing;

// Load an existing PDF and apply a digital signature using an X.509 certificate
var pdf = PdfDocument.FromFile("agreement.pdf");
var signature = new PdfSignature("certificate.pfx", "pfx-password");
pdf.Sign(signature);

// Populate named form fields with dynamic application data
pdf.Form.FindFormField("CustomerName").Value = "Acme Corporation";
pdf.Form.FindFormField("ContractDate").Value = DateTime.Now.ToString("yyyy-MM-dd");
pdf.Form.FindFormField("Amount").Value = "$12,500.00";

pdf.SaveAs("signed-agreement.pdf");
using IronPdf;
using IronPdf.Signing;

// Load an existing PDF and apply a digital signature using an X.509 certificate
var pdf = PdfDocument.FromFile("agreement.pdf");
var signature = new PdfSignature("certificate.pfx", "pfx-password");
pdf.Sign(signature);

// Populate named form fields with dynamic application data
pdf.Form.FindFormField("CustomerName").Value = "Acme Corporation";
pdf.Form.FindFormField("ContractDate").Value = DateTime.Now.ToString("yyyy-MM-dd");
pdf.Form.FindFormField("Amount").Value = "$12,500.00";

pdf.SaveAs("signed-agreement.pdf");
$vbLabelText   $csharpLabel

Ejemplo de firma verificada

Adobe Acrobat muestra un panel de firma digital verificado en un PDF firmado con la API PdfSignature de IronPDF

Las firmas digitales utilizan certificados X.509 en formato PFX y cumplen con los estándares de firma PDF reconocidos por Adobe Acrobat y otros visores de PDF. El panel de firma en Acrobat confirma el emisor del certificado, la hora de la firma y el estado de integridad. La API de formularios PDF admite campos de texto, casillas de verificación, botones de opción y menús desplegables. Puede crear plantillas de formulario mediante programación, completarlas con datos en tiempo de ejecución y leer los valores de los campos enviados desde los documentos completados. Este patrón es útil para la gestión de contratos, la incorporación de RR.HH. y los procesos de recopilación de datos automatizados donde la misma plantilla PDF se reutiliza en muchas transacciones con diferentes valores de campo.

Para las firmas basadas en marcas de tiempo, pase una instancia PdfSignature configurada con un URI de servidor de marcas de tiempo para que el tiempo de firma esté certificado por un tercero confiable en lugar del reloj del sistema local. La guía de firma cubre imágenes de firma visibles, múltiples firmantes secuenciales y opciones de validación de certificados.

¿Cómo editar y manipular documentos PDF existentes?

IronPDF le permite modificar archivos PDF sin reconstruirlos desde HTML. Agregue encabezados, pies de página, marcas de agua, anotaciones o combine y divida páginas mediante programación.

using IronPdf;

var document = PdfDocument.FromFile("report.pdf");

// Add a semi-transparent watermark using HTML
document.ApplyWatermark("<h2 style='color:red; opacity:0.4; transform:rotate(-30deg)'>CONFIDENTIAL</h2>",
    rotation: 30, opacity: 50);

// Add a branded header to every page
document.AddHtmlHeaders(new HtmlHeaderFooter
{
    HtmlFragment = "<div style='text-align:right; font-size:10px; color:#666'>Internal Use Only - Page {page} of {total-pages}</div>"
});

// Append supplementary pages from a second document
var appendix = PdfDocument.FromFile("appendix.pdf");
document.AppendPdf(appendix);

document.SaveAs("final-report.pdf");

// Export to bytes for HTTP streaming
byte[] pdfBytes = document.BinaryData;
using IronPdf;

var document = PdfDocument.FromFile("report.pdf");

// Add a semi-transparent watermark using HTML
document.ApplyWatermark("<h2 style='color:red; opacity:0.4; transform:rotate(-30deg)'>CONFIDENTIAL</h2>",
    rotation: 30, opacity: 50);

// Add a branded header to every page
document.AddHtmlHeaders(new HtmlHeaderFooter
{
    HtmlFragment = "<div style='text-align:right; font-size:10px; color:#666'>Internal Use Only - Page {page} of {total-pages}</div>"
});

// Append supplementary pages from a second document
var appendix = PdfDocument.FromFile("appendix.pdf");
document.AppendPdf(appendix);

document.SaveAs("final-report.pdf");

// Export to bytes for HTTP streaming
byte[] pdfBytes = document.BinaryData;
$vbLabelText   $csharpLabel

Ejemplo de resultado

Documento PDF con marca de agua confidencial agregada por IronPDF y encabezado de marca que muestra los números de página y las páginas del apéndice adjuntas

La API de encabezados y pies de página HTML admite variables de plantilla, incluidas {page}, {total-pages} y {date} para contenido dinámico. El método de marca de agua personalizado acepta un fragmento HTML para que pueda aplicar superposiciones estilizadas, rotadas y semitransparentes en todas las páginas en una sola llamada. También puede dividir archivos PDF por rango de páginas, fusionar varios documentos y extraer imágenes incrustadas y contenido de texto de cualquier PDF. La extracción de texto preserva el orden de lectura en las columnas y tablas, lo que simplifica el procesamiento posterior para la indexación de búsqueda, la migración de contenido o los flujos de trabajo de validación de datos.

¿Cómo aplicar la protección de contraseña y la configuración de seguridad?

Proteger documentos PDF con contraseñas y marcas de permiso es un requisito estándar para informes financieros, documentos legales y registros de RR.HH.

using IronPdf;
using IronPdf.Security;

var pdf = PdfDocument.FromFile("financial-report.pdf");

// Set passwords: UserPassword controls opening, OwnerPassword controls editing
pdf.SecuritySettings.UserPassword = "viewer-password";
pdf.SecuritySettings.OwnerPassword = "admin-password";

// Configure fine-grained permissions
pdf.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.PrintLowResolution;
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserAnnotations = false;
pdf.SecuritySettings.AllowUserFormData = false;

pdf.SaveAs("protected-report.pdf");
using IronPdf;
using IronPdf.Security;

var pdf = PdfDocument.FromFile("financial-report.pdf");

// Set passwords: UserPassword controls opening, OwnerPassword controls editing
pdf.SecuritySettings.UserPassword = "viewer-password";
pdf.SecuritySettings.OwnerPassword = "admin-password";

// Configure fine-grained permissions
pdf.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.PrintLowResolution;
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserAnnotations = false;
pdf.SecuritySettings.AllowUserFormData = false;

pdf.SaveAs("protected-report.pdf");
$vbLabelText   $csharpLabel

La API de configuración de seguridad de PDF aplica cifrado AES de 128 bits o 256 bits. La configuración UserPassword requiere que los lectores ingresen la contraseña al abrir el archivo en cualquier visor de PDF. La configuración OwnerPassword restringe la modificación programática y las operaciones a nivel de propietario. Las banderas de permiso controlan la calidad de impresión, la selección de texto, las anotaciones y el acceso a los campos de formulario de forma independiente. Después de aplicar la configuración de seguridad, la propiedad BinaryData devuelve los bytes PDF cifrados para almacenamiento o transmisión HTTP. Estas configuraciones se ajustan al modelo de control de acceso de la especificación PDF, por lo que los documentos protegidos se abren correctamente en Adobe Acrobat, visores de PDF basados ​​en navegador y aplicaciones de lectura móviles.

Para eliminar la protección de un documento de su propiedad, cargue el archivo con la contraseña de propietario pasada como parámetro a PdfDocument.FromFile y luego guárdelo sin aplicar la configuración de seguridad. Esto permite el procesamiento programático de documentos en flujos de trabajo del lado del servidor donde los archivos protegidos con contraseña llegan como entradas y deben transformarse antes de su redistribución.

¿Cuales son tus próximos pasos?

La API PDF de IronPDF for .NET Core maneja el ciclo de vida completo del documento en C#: generación de cadenas HTML y URL, conversión de archivos DOCX e imágenes, configuración del diseño de página y opciones de renderizado, edición de marcas de agua, encabezados y pies de página, aplicación de firmas digitales y protección de documentos con cifrado. Todas las operaciones utilizan una API consistente en .NET 8, .NET 9 y .NET 10 en Windows, macOS y Linux.

Comience una prueba gratuita para evaluar IronPDF con sus propios documentos. Para conocer escenarios adicionales, explore la guía de opciones de renderizado de HTML a PDF , la compresión y optimización de PDF y la descripción general completa de las funciones de IronPDF . Revise las opciones de licencia para la implementación de producción.

Preguntas Frecuentes

¿Qué es la API de PDF de IronPDF for .NET Core?

IronPDF es una biblioteca .NET que genera, convierte y edita documentos PDF en aplicaciones C#. Se instala como un único paquete NuGet y soporta .NET 10, .NET 9, .NET 8 y .NET Framework 4.6.2 o posterior.

¿Cómo generar un PDF desde HTML en .NET Core?

Crea una instancia de ChromePdfRenderer y llama a RenderHtmlAsPdf con una cadena HTML, o RenderUrlAsPdfAsync con una URL. El renderer convierte la salida HTML, CSS y JavaScript en un objeto PdfDocument que puedes guardar o transmitir.

¿Cómo configuro el tamaño de página y los márgenes en IronPDF?

Configura propiedades en renderer.RenderingOptions antes de llamar a un método de renderización. Usa PaperSize para formatos estándar, PaperOrientation para retrato o paisaje, y MarginTop, MarginBottom, MarginLeft, MarginRight para márgenes basados en milímetros.

¿Puede IronPDF convertir archivos DOCX a PDF en .NET Core?

Sí. Utiliza DocxToPdfRenderer.RenderDocxAsPdf con la ruta del archivo. El convertidor preserva estilos de párrafos, tablas, encabezados, pies de página e imágenes embebidas del documento Word de origen.

¿Cómo agrego una firma digital a un PDF en C#?

Carga el PDF con PdfDocument.FromFile, crea un PdfSignature con la ruta y contraseña del certificado PFX, luego llama a pdf.Sign(signature). El documento resultante aparece como verificado en Adobe Acrobat y visores de PDF compatibles.

¿Cómo protejo con contraseña un PDF usando IronPDF?

Configura pdf.SecuritySettings.UserPassword para la contraseña de apertura y pdf.SecuritySettings.OwnerPassword para la contraseña de propietario. Utiliza AllowUserPrinting, AllowUserCopyPasteContent, y flags relacionados para controlar permisos individuales.

¿Cómo devolver un PDF generado como respuesta HTTP en ASP.NET Core?

Accede a la propiedad BinaryData en la instancia de PdfDocument para recuperar el PDF como un array de bytes, luego devuélvelo con File(pdfBytes, 'application/pdf', 'filename.pdf') en una acción de controlador de ASP.NET Core.

¿Funciona IronPDF en Linux y macOS para aplicaciones .NET Core?

Sí. IronPDF funciona en Windows, macOS y Linux sin dependencias nativas de tiempo de ejecución adicionales. Soporta despliegues en contenedores a Docker, Azure y AWS sin configuración específica de plataforma.

¿Cómo agregas encabezados y pies de página a un PDF con IronPDF?

Llama a document.AddHtmlHeaders con un objeto HtmlHeaderFooter cuyo HtmlFragment contenga el marcado del encabezado. Utiliza variables de plantilla {page}, {total-pages}, y {date} para valores dinámicos. La misma API se aplica a pies de página.

¿Es IronPDF seguro para hilos para usar en ASP.NET Core?

ChromePdfRenderer es seguro para hilos y puede registrarse como un singleton en el contenedor de inyección de dependencias. Para cargas de trabajo de alto rendimiento, utiliza los métodos de renderización asincrónicos (RenderHtmlAsPdfAsync, RenderUrlAsPdfAsync) para evitar bloquear hilos de solicitud.

Curtis Chau
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

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me