C# Abrir PDF en el visor predeterminado con IronPDF (.NET 10)
Abrir un PDF en el visor predeterminado es una tarea común en el desarrollo de aplicaciones .NET . Después de generar archivos PDF mediante programación con IronPDF , a menudo es necesario mostrarlos a los usuarios inmediatamente en su aplicación predeterminada elegida, como Adobe Acrobat o Microsoft Edge. Esta guía le guiará a través de los pasos para generar archivos PDF utilizando IronPDF y abrirlos automáticamente en Windows utilizando System.Diagnostics.Process.Start.
La combinación de las potentes capacidades de conversión de HTML a PDF de IronPDF con el sencillo método de lanzamiento Process crea un flujo de trabajo práctico para crear y mostrar archivos PDF profesionales en la aplicación predeterminada configurada en el equipo de un usuario.
¿Cómo instalar IronPDF en un proyecto .NET ?
Antes de generar o abrir cualquier PDF, necesitas tener IronPDF instalado en tu proyecto. Utilice la consola del administrador de paquetes NuGet o la CLI de .NET :
Install-Package IronPdf
dotnet add package IronPdf
Install-Package IronPdf
dotnet add package IronPdf
Después de la instalación, agregue su clave de licencia o comience con una prueba gratuita para habilitar la funcionalidad completa. La documentación de IronPDF cubre en detalle todas las opciones de configuración, incluida la instalación a través de NuGet.
Una vez instalado, tendrá acceso al conjunto completo de funciones de IronPDF , incluida la conversión de HTML a PDF, la representación de URL, la fusión de PDF, la marca de agua, la firma digital y más.
¿Cómo generar y abrir un archivo PDF?
El enfoque más sencillo implica tres pasos:
- Crear un documento PDF con IronPDF.
- Guardar el archivo en un directorio.
- Abra el PDF en la aplicación predeterminada utilizando
Process.Start.
A continuación se muestra un ejemplo completo de trabajo que puedes probar en Visual Studio con un nuevo proyecto de aplicación de consola:
using IronPdf;
using System.Diagnostics;
// Create a new PDF renderer
var renderer = new ChromePdfRenderer();
// Generate PDF from HTML content
var pdf = renderer.RenderHtmlAsPdf(@"
<html>
<body>
<h1>Invoice #12345</h1>
<p>Generated on: " + DateTime.Now.ToString("yyyy-MM-dd") + @"</p>
<table>
<tr><td>Product</td><td>Price</td></tr>
<tr><td>IronPDF License</td><td>$299</td></tr>
</table>
</body>
</html>");
// Save the PDF to a file
string outputPath = "invoice.pdf";
pdf.SaveAs(outputPath);
// Open the PDF in the default viewer
Process.Start(new ProcessStartInfo
{
FileName = outputPath,
UseShellExecute = true
});
using IronPdf;
using System.Diagnostics;
// Create a new PDF renderer
var renderer = new ChromePdfRenderer();
// Generate PDF from HTML content
var pdf = renderer.RenderHtmlAsPdf(@"
<html>
<body>
<h1>Invoice #12345</h1>
<p>Generated on: " + DateTime.Now.ToString("yyyy-MM-dd") + @"</p>
<table>
<tr><td>Product</td><td>Price</td></tr>
<tr><td>IronPDF License</td><td>$299</td></tr>
</table>
</body>
</html>");
// Save the PDF to a file
string outputPath = "invoice.pdf";
pdf.SaveAs(outputPath);
// Open the PDF in the default viewer
Process.Start(new ProcessStartInfo
{
FileName = outputPath,
UseShellExecute = true
});
Imports IronPdf
Imports System.Diagnostics
' Create a new PDF renderer
Dim renderer As New ChromePdfRenderer()
' Generate PDF from HTML content
Dim pdf = renderer.RenderHtmlAsPdf("
<html>
<body>
<h1>Invoice #12345</h1>
<p>Generated on: " & DateTime.Now.ToString("yyyy-MM-dd") & "</p>
<table>
<tr><td>Product</td><td>Price</td></tr>
<tr><td>IronPDF License</td><td>$299</td></tr>
</table>
</body>
</html>")
' Save the PDF to a file
Dim outputPath As String = "invoice.pdf"
pdf.SaveAs(outputPath)
' Open the PDF in the default viewer
Process.Start(New ProcessStartInfo With {
.FileName = outputPath,
.UseShellExecute = True
})
Este código crea primero una instancia ChromePdfRenderer, que es la clase principal de IronPDF para convertir HTML a PDF. El método RenderHtmlAsPdf convierte la cadena HTML en un objeto de documento PDF. Para obtener más información sobre este enfoque, consulte la guía de HTML a PDF de IronPDF .
Después de guardar el PDF utilizando SaveAs, el código utiliza Process.Start con ProcessStartInfo para abrir el archivo en el visor de PDF predeterminado. La configuración clave aquí es UseShellExecute = true, que indica a Windows que abra el archivo PDF con su aplicación predeterminada.
Resultado
Como se muestra en la imagen a continuación, IronPDF genera con éxito el archivo PDF y lo muestra utilizando el visor predeterminado configurado en el sistema: en este caso, Opera GX.

¿Por qué declaraciones de alto nivel?
Con .NET 10 y las versiones modernas de C#, las declaraciones de nivel superior eliminan la necesidad de una envoltura de clase Program. El código se ejecuta directamente desde la parte superior del archivo, lo que hace que los ejemplos sean más cortos y fáciles de seguir. Todos los ejemplos de esta guía utilizan este patrón.
¿Por qué es importante UseShellExecute al abrir documentos PDF?
En .NET Core y las versiones modernas de .NET (.NET 5 a .NET 10), el parámetro UseShellExecute aparece por defecto como false. Si no se establece explícitamente en true, su aplicación arrojará un error al intentar iniciar un archivo PDF.
using IronPdf;
using System.Diagnostics;
using System.IO;
// Generate a report with IronPDF
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.MarginTop = 50;
renderer.RenderingOptions.MarginBottom = 50;
var pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
// Save to temp directory for immediate viewing
string tempPath = Path.Combine(Path.GetTempPath(), $"URL_{Guid.NewGuid()}.pdf");
pdf.SaveAs(tempPath);
// IMPORTANT: Set UseShellExecute = true for .NET Core/5+
var startInfo = new ProcessStartInfo
{
FileName = tempPath,
UseShellExecute = true // Required in .NET Core/5+ to open PDF in default viewer
};
Process.Start(startInfo);
using IronPdf;
using System.Diagnostics;
using System.IO;
// Generate a report with IronPDF
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.MarginTop = 50;
renderer.RenderingOptions.MarginBottom = 50;
var pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
// Save to temp directory for immediate viewing
string tempPath = Path.Combine(Path.GetTempPath(), $"URL_{Guid.NewGuid()}.pdf");
pdf.SaveAs(tempPath);
// IMPORTANT: Set UseShellExecute = true for .NET Core/5+
var startInfo = new ProcessStartInfo
{
FileName = tempPath,
UseShellExecute = true // Required in .NET Core/5+ to open PDF in default viewer
};
Process.Start(startInfo);
Imports IronPdf
Imports System.Diagnostics
Imports System.IO
' Generate a report with IronPDF
Dim renderer As New ChromePdfRenderer()
renderer.RenderingOptions.MarginTop = 50
renderer.RenderingOptions.MarginBottom = 50
Dim pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page")
' Save to temp directory for immediate viewing
Dim tempPath As String = Path.Combine(Path.GetTempPath(), $"URL_{Guid.NewGuid()}.pdf")
pdf.SaveAs(tempPath)
' IMPORTANT: Set UseShellExecute = true for .NET Core/5+
Dim startInfo As New ProcessStartInfo With {
.FileName = tempPath,
.UseShellExecute = True ' Required in .NET Core/5+ to open PDF in default viewer
}
Process.Start(startInfo)
La propiedad UseShellExecute determina si se utiliza el shell del sistema operativo para iniciar el proceso. Cuando se establece en true, Windows utiliza el registro de asociación de archivos para determinar qué lector de PDF predeterminado debe abrir el archivo. Sin esta configuración en las versiones modernas de .NET, se encontrará con un error de ejecución que indica que el archivo no se puede abrir.
El uso de un directorio temporal con un nombre de archivo único (mediante Guid.NewGuid()) evita conflictos entre archivos cuando se generan varios PDF en rápida sucesión. El sistema operativo limpia automáticamente la carpeta temporal predeterminada según un cronograma regular.
Resultado

¿Cómo manejar correctamente las rutas de archivos?
Las rutas de archivos que contienen espacios y caracteres especiales requieren un manejo cuidadoso. Un directorio faltante o una ruta malformada fallará silenciosamente o lanzará una excepción antes de que Process.Start sea alcanzado. A continuación se muestra un enfoque que incluye la creación de directorios y comprobaciones de existencia de archivos:
using IronPdf;
using System.Diagnostics;
using System.IO;
// Generate PDF from HTML file
var renderer = new ChromePdfRenderer();
var htmlContent = File.ReadAllText("template.html");
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
// Create output directory if it doesn't exist
string outputDir = @"C:\PDF Reports\Monthly";
Directory.CreateDirectory(outputDir);
// Build file path with timestamp
string fileName = $"Report_{DateTime.Now:yyyyMMdd_HHmmss}.pdf";
string fullPath = Path.Combine(outputDir, fileName);
// Save the PDF
pdf.SaveAs(fullPath);
// Verify file exists before opening in default PDF viewer
if (File.Exists(fullPath))
{
Process.Start(new ProcessStartInfo
{
FileName = fullPath,
UseShellExecute = true
});
}
else
{
Console.WriteLine($"Error: PDF file not found at {fullPath}");
}
using IronPdf;
using System.Diagnostics;
using System.IO;
// Generate PDF from HTML file
var renderer = new ChromePdfRenderer();
var htmlContent = File.ReadAllText("template.html");
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
// Create output directory if it doesn't exist
string outputDir = @"C:\PDF Reports\Monthly";
Directory.CreateDirectory(outputDir);
// Build file path with timestamp
string fileName = $"Report_{DateTime.Now:yyyyMMdd_HHmmss}.pdf";
string fullPath = Path.Combine(outputDir, fileName);
// Save the PDF
pdf.SaveAs(fullPath);
// Verify file exists before opening in default PDF viewer
if (File.Exists(fullPath))
{
Process.Start(new ProcessStartInfo
{
FileName = fullPath,
UseShellExecute = true
});
}
else
{
Console.WriteLine($"Error: PDF file not found at {fullPath}");
}
Imports IronPdf
Imports System.Diagnostics
Imports System.IO
' Generate PDF from HTML file
Dim renderer As New ChromePdfRenderer()
Dim htmlContent As String = File.ReadAllText("template.html")
Dim pdf = renderer.RenderHtmlAsPdf(htmlContent)
' Create output directory if it doesn't exist
Dim outputDir As String = "C:\PDF Reports\Monthly"
Directory.CreateDirectory(outputDir)
' Build file path with timestamp
Dim fileName As String = $"Report_{DateTime.Now:yyyyMMdd_HHmmss}.pdf"
Dim fullPath As String = Path.Combine(outputDir, fileName)
' Save the PDF
pdf.SaveAs(fullPath)
' Verify file exists before opening in default PDF viewer
If File.Exists(fullPath) Then
Process.Start(New ProcessStartInfo With {
.FileName = fullPath,
.UseShellExecute = True
})
Else
Console.WriteLine($"Error: PDF file not found at {fullPath}")
End If
Este código demuestra varias buenas prácticas: el uso de Path.Combine para construir rutas de archivos correctamente independientemente del sistema operativo, la creación de directorios según sea necesario con Directory.CreateDirectory, y la verificación de la existencia de archivos antes de intentar abrir el PDF en el visor predeterminado.
La marca de tiempo en el nombre del archivo asegura la unicidad y proporciona un registro claro de cuándo se generó cada PDF. Para obtener opciones avanzadas de manipulación de PDF, como fusionar o dividir archivos PDF , agregar marcas de agua , firma digital y encabezados y pies de página , explore las guías prácticas de IronPDF.
¿Qué pasa con los caminos con espacios?
Path.Combine maneja los espacios correctamente porque construye rutas como cadenas en lugar de depender de la expansión del shell. La clase ProcessStartInfo también maneja correctamente las rutas entre comillas cuando UseShellExecute = true. Si alguna vez pasa una ruta a un comando de shell directamente, rodéela siempre con comillas dobles. Con Process.Start, la propiedad FileName no requiere cita manual.
¿Cómo aplicar las mejores prácticas para la producción?
Para aplicaciones de producción, considere un flujo de trabajo más completo que maneje el ciclo de vida del PDF con manejo de errores, opciones de representación configurables y directorios de salida predecibles:
using IronPdf;
using IronPdf.Rendering;
using System.Diagnostics;
using System.IO;
static void GenerateAndDisplayPdf(string htmlContent, string documentName)
{
try
{
// Configure IronPDF renderer with production settings
var renderer = new ChromePdfRenderer
{
RenderingOptions = new ChromePdfRenderOptions
{
PaperSize = PdfPaperSize.A4,
PrintHtmlBackgrounds = true,
CreatePdfFormsFromHtml = true
}
};
// Generate the PDF
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
// Use the user's Documents folder for better accessibility
string documentsPath = Environment.GetFolderPath(
Environment.SpecialFolder.MyDocuments);
string pdfFolder = Path.Combine(documentsPath, "Generated PDFs");
Directory.CreateDirectory(pdfFolder);
string outputPath = Path.Combine(pdfFolder, $"{documentName}.pdf");
pdf.SaveAs(outputPath);
// Open PDF in default viewer without waiting for it to close
Process.Start(new ProcessStartInfo
{
FileName = outputPath,
UseShellExecute = true // Essential for opening PDF in default application
});
Console.WriteLine($"PDF opened: {outputPath}");
}
catch (Exception ex)
{
Console.WriteLine($"Error generating or opening PDF: {ex.Message}");
}
}
using IronPdf;
using IronPdf.Rendering;
using System.Diagnostics;
using System.IO;
static void GenerateAndDisplayPdf(string htmlContent, string documentName)
{
try
{
// Configure IronPDF renderer with production settings
var renderer = new ChromePdfRenderer
{
RenderingOptions = new ChromePdfRenderOptions
{
PaperSize = PdfPaperSize.A4,
PrintHtmlBackgrounds = true,
CreatePdfFormsFromHtml = true
}
};
// Generate the PDF
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
// Use the user's Documents folder for better accessibility
string documentsPath = Environment.GetFolderPath(
Environment.SpecialFolder.MyDocuments);
string pdfFolder = Path.Combine(documentsPath, "Generated PDFs");
Directory.CreateDirectory(pdfFolder);
string outputPath = Path.Combine(pdfFolder, $"{documentName}.pdf");
pdf.SaveAs(outputPath);
// Open PDF in default viewer without waiting for it to close
Process.Start(new ProcessStartInfo
{
FileName = outputPath,
UseShellExecute = true // Essential for opening PDF in default application
});
Console.WriteLine($"PDF opened: {outputPath}");
}
catch (Exception ex)
{
Console.WriteLine($"Error generating or opening PDF: {ex.Message}");
}
}
Imports IronPdf
Imports IronPdf.Rendering
Imports System.Diagnostics
Imports System.IO
Module PdfGenerator
Sub GenerateAndDisplayPdf(htmlContent As String, documentName As String)
Try
' Configure IronPDF renderer with production settings
Dim renderer As New ChromePdfRenderer With {
.RenderingOptions = New ChromePdfRenderOptions With {
.PaperSize = PdfPaperSize.A4,
.PrintHtmlBackgrounds = True,
.CreatePdfFormsFromHtml = True
}
}
' Generate the PDF
Dim pdf = renderer.RenderHtmlAsPdf(htmlContent)
' Use the user's Documents folder for better accessibility
Dim documentsPath As String = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)
Dim pdfFolder As String = Path.Combine(documentsPath, "Generated PDFs")
Directory.CreateDirectory(pdfFolder)
Dim outputPath As String = Path.Combine(pdfFolder, $"{documentName}.pdf")
pdf.SaveAs(outputPath)
' Open PDF in default viewer without waiting for it to close
Process.Start(New ProcessStartInfo With {
.FileName = outputPath,
.UseShellExecute = True ' Essential for opening PDF in default application
})
Console.WriteLine($"PDF opened: {outputPath}")
Catch ex As Exception
Console.WriteLine($"Error generating or opening PDF: {ex.Message}")
End Try
End Sub
End Module
Este ejemplo incluye manejo de errores estructurado y guarda archivos PDF en la carpeta Documentos del usuario, a la que se puede acceder independientemente de cómo se inicie la aplicación. También configura IronPDF con opciones de renderizado adecuadas para documentos comerciales: tamaño de papel A4, impresión de fondo HTML habilitada y creación automática de campos de formulario a partir de elementos de formulario HTML.
Puede obtener más información sobre formularios PDF interactivos y marcas de agua personalizadas en la biblioteca de procedimientos de IronPDF .
El método no espera a que se cierre el visor de PDF, lo que permite que la aplicación continúe ejecutándose mientras el usuario ve el documento. Según la documentación de Microsoft en Process.Start , este enfoque garantiza una gestión adecuada de los recursos y evita que su aplicación se bloquee en un proceso de visualización de ejecución prolongada. La referencia de clase ProcessStartInfo en Microsoft Learn proporciona una lista completa de propiedades que puede configurar, incluido el estilo de ventana, el verbo (abrir, imprimir) y el directorio de trabajo.

Configuración de las opciones de renderizado
La clase ChromePdfRenderOptions le ofrece un control detallado sobre el PDF de salida. Las configuraciones comunes incluyen:
- Tamaño de papel -- Seleccione
PdfPaperSize.A4,Lettero cualquier tamaño estándar. - PrintHtmlBackgrounds : Representa colores e imágenes de fondo desde el HTML.
- CreatePdfFormsFromHtml -- Convierte elementos HTML
<input>y<select>en campos de formulario PDF interactivos. - MarginTop / MarginBottom / MarginLeft / MarginRight – Controla los márgenes de la página en milímetros.
Estas configuraciones se aplican por igual independientemente de si representa cadenas HTML, archivos HTML locales o URL remotas.
¿Cómo se extraen datos de los PDF generados?
Una vez que haya generado y abierto un PDF, es posible que también necesite volver a leer su contenido. IronPDF admite la extracción de texto de archivos PDF , lo que resulta útil para el registro, la verificación o el procesamiento posterior.
Para documentos con muchas imágenes, también puede utilizar la conversión de PDF a imagen para representar páginas individuales como archivos PNG o JPEG. Esto es común en los flujos de trabajo de generación de vistas previas y miniaturas.
Ambas funciones están disponibles a través de la misma biblioteca IronPDF y no requieren dependencias adicionales. La documentación completa de la API de IronPDF proporciona referencias a nivel de método para todas las operaciones de extracción y conversión.
¿Qué sucede si no hay ningún visor de PDF instalado?
Si no hay ningún visor de PDF instalado en la máquina de destino, Windows mostrará un cuadro de diálogo solicitando al usuario que seleccione una aplicación o visite Microsoft Store para encontrar una. Este es el comportamiento estándar de Windows y está fuera del control de Process.Start.
Para manejar esto con elegancia en el código de producción, puede capturar el Win32Exception que Process.Start lanza cuando no se encuentra ningún controlador registrado para la extensión de archivo .pdf:
using System.ComponentModel;
using System.Diagnostics;
try
{
Process.Start(new ProcessStartInfo
{
FileName = outputPath,
UseShellExecute = true
});
}
catch (Win32Exception ex) when (ex.NativeErrorCode == 1155)
{
// Error 1155: No application associated with the file extension
Console.WriteLine("No PDF viewer is installed. Please install a PDF reader such as Adobe Acrobat Reader.");
}
using System.ComponentModel;
using System.Diagnostics;
try
{
Process.Start(new ProcessStartInfo
{
FileName = outputPath,
UseShellExecute = true
});
}
catch (Win32Exception ex) when (ex.NativeErrorCode == 1155)
{
// Error 1155: No application associated with the file extension
Console.WriteLine("No PDF viewer is installed. Please install a PDF reader such as Adobe Acrobat Reader.");
}
Imports System.ComponentModel
Imports System.Diagnostics
Try
Process.Start(New ProcessStartInfo With {
.FileName = outputPath,
.UseShellExecute = True
})
Catch ex As Win32Exception When ex.NativeErrorCode = 1155
' Error 1155: No application associated with the file extension
Console.WriteLine("No PDF viewer is installed. Please install a PDF reader such as Adobe Acrobat Reader.")
End Try
El código de error 1155 corresponde a ERROR_NO_ASSOCIATION, que Windows devuelve cuando no hay ninguna aplicación registrada para el tipo de archivo. Detectar este error específico le permitirá mostrar un mensaje útil en lugar de bloquear el sistema. La lista completa de códigos de error del sistema de Windows está documentada en la referencia de códigos de error de Win32 en Microsoft Learn.
¿Cómo elegir el enfoque adecuado para su aplicación?
El método que elija para abrir un PDF depende del tipo de aplicación que esté creando:
| Tipo de aplicación | Enfoque recomendado | Consideración clave |
|---|---|---|
| Aplicación de consola o de escritorio | Proceso.Comience con UseShellExecute = true | Simple, sin dependencias adicionales |
| Servicio de Windows | Guardar en el disco; notificar al usuario mediante IPC o cola de mensajes | Los servicios se ejecutan sin una sesión de escritorio |
| Aplicación web (ASP.NET) | Transmita PDF como descarga de archivo o en línea en el navegador | Process.Start no es válido en contextos de servidor web |
| MAUI o WinForms | Proceso.Inicio o control de PDF incrustado | La visualización integrada proporciona una mejor experiencia en la aplicación |
Para las aplicaciones web creadas con ASP.NET Core, no utilice Process.Start. El proceso del servidor se ejecuta en un entorno sin cabeza y no puede abrir aplicaciones de escritorio. En su lugar, devuelva el PDF como resultado de un archivo utilizando File() con el tipo MIME application/pdf, y deje que el navegador se encargue de la visualización.
Para aplicaciones de consola y de escritorio, Process.Start con UseShellExecute = true sigue siendo la opción más sencilla y fiable.
¿Está listo para comenzar a generar y visualizar archivos PDF en su aplicación .NET ? Comience con una prueba gratuita para acceder al conjunto completo de funciones o revise la página de licencias de IronPDF para encontrar el plan adecuado para su proyecto.
Preguntas Frecuentes
¿Cómo puedo abrir un PDF en el visor predeterminado usando C#?
Puedes abrir un PDF en el visor predeterminado en C# usando IronPDF para generar el PDF y System.Diagnostics.Process.Start para abrirlo en la aplicación predeterminada de PDF del usuario.
¿Qué es IronPDF?
IronPDF es una biblioteca .NET que permite a los desarrolladores crear, editar y manipular archivos PDF programáticamente dentro de sus aplicaciones.
¿Cuáles son los requisitos del sistema para usar IronPDF?
IronPDF es compatible con cualquier aplicación .NET y funciona en plataformas de Windows, macOS y Linux. Requiere que se instale .NET Framework o .NET Core/5+.
¿Puede IronPDF abrir PDFs en Adobe Acrobat por defecto?
Sí, IronPDF puede generar PDFs que se abran en el visor PDF predeterminado establecido por el usuario, que puede ser Adobe Acrobat, Microsoft Edge o cualquier otra aplicación de visualización de PDF.
¿Cómo funciona System.Diagnostics.Process.Start con IronPDF?
System.Diagnostics.Process.Start se utiliza para abrir el archivo PDF generado en el visor predeterminado. Una vez que IronPDF crea el archivo, este método lanza la aplicación predeterminada asociada con los archivos PDF para mostrarlo.
¿Es posible editar archivos PDF con IronPDF?
Sí, IronPDF te permite editar archivos PDF existentes agregando texto, imágenes, anotaciones y más antes de guardarlos o mostrarlos.
¿Qué lenguajes de programación son compatibles con IronPDF?
IronPDF se utiliza principalmente con C#, pero también se puede integrar en proyectos utilizando VB.NET y otros lenguajes compatibles con .NET.
¿Puede IronPDF automatizar la visualización de PDFs después de su generación?
Sí, después de generar un PDF con IronPDF, puedes automatizar su visualización usando System.Diagnostics.Process.Start para abrirlo inmediatamente en el visor predeterminado del usuario.
¿Hay ejemplos de código disponibles para usar IronPDF?
La documentación de IronPDF proporciona varios ejemplos de código para generar y manipular PDFs, incluido cómo abrirlos en el visor predeterminado usando C#.
¿Cuáles son algunos casos de uso comunes para IronPDF?
Los casos de uso comunes para IronPDF incluyen generar informes, facturas y otros documentos, convertir HTML a PDF y automatizar el proceso de visualización de PDF en aplicaciones .NET.
¿IronPDF es compatible con .NET 10 y qué beneficios aporta?
Sí. IronPDF es totalmente compatible con .NET 10, incluyendo sus mejoras de tiempo de ejecución y lenguaje. Al usar IronPDF con .NET 10, sus aplicaciones se benefician de mejoras de rendimiento, como la reducción de asignaciones de montón, una generación de PDF más rápida y una integración más fluida con API y plataformas modernas.


