USO DE IRONPDF

Cómo guardar un archivo PDF en C# (Tutorial para principiantes)

Actualizado 10 de marzo, 2024
Compartir:

Este artículo explorará cómo utilizar IronPDF para guardar archivos PDF desde una aplicación Windows Forms o cualquier aplicación .NET.

La biblioteca IronPDF es una biblioteca .NET que proporciona clases y métodos fáciles de usar para generar archivos PDF y trabajar con ellos en aplicaciones C#. Permite a los desarrolladores crear, modificar y guardar archivos PDF con sólo unas pocas líneas de código, lo que la convierte en una excelente opción para aplicaciones Windows Forms.

Paso 1: Crear una nueva aplicación Windows Forms

En primer lugar, cree un nuevo proyecto de Visual Studio. Estos son los pasos para crear una nueva aplicación C# Windows Forms en Visual Studio 2022

  1. Abra Visual Studio 2022 como se muestra a continuación.

    Cómo guardar un archivo PDF en C# (Tutorial para principiantes), Figura 1: Visual Studio 2022

    Estudio Visual 2022

  2. Haga clic en "Crear un nuevo proyecto" en la página de inicio o vaya a "Archivo" > "Nuevo" > "Proyecto".

  3. En el cuadro de diálogo "Crear un nuevo proyecto", seleccione "Windows Forms App" o "Windows Forms App(.NET Framework)" en "Crear un nuevo proyecto", como se muestra a continuación.

    Cómo guardar un archivo PDF en C# (Tutorial para principiantes), Figura 2: Nueva aplicación Forms

    **Nueva aplicación de formularios

  4. Introduce un nombre para tu proyecto y elige una ubicación para guardarlo.

    Cómo guardar un archivo PDF en C# (Tutorial para principiantes), Figura 3: Ubicación del proyecto

    **Localización del proyecto

  5. Seleccione .NET Framework. Seleccione .NET 7.0 en el menú desplegable.

  6. Haga clic en el botón Crear.

    Cómo guardar un archivo PDF en C# (Tutorial para principiantes), Figura 4: Información adicional

    **Información adicional

  7. Visual Studio creará un nuevo proyecto de aplicación C# Windows Forms para usted, con un formulario por defecto llamado "Form1" añadido al proyecto como se muestra a continuación.

    Cómo guardar un archivo PDF en C# (Tutorial para principiantes), Figura 5: Proyecto Form1

    Proyecto Form1

    Ya está.! Ahora empezaremos a construir la aplicación Windows Forms utilizando el diseñador, añadiendo controles y funcionalidad para crear y guardar un archivo de documento PDF.

Paso 2: Diseñar el formulario

Puede diseñar el formulario según sus preferencias. En este tutorial se realizará un diseño minimalista añadiendo dos etiquetas, un cuadro de texto enriquecido y dos botones.

Cómo guardar un archivo PDF en C# (Tutorial para principiantes), Figura 6: Añadir botones al formulario

Añadir botones al formulario

Paso 3: Instalar IronPDF

El siguiente paso es instalar IronPDF en este proyecto para utilizar sus ricas funcionalidades.

IronPDF puede instalarse mediante NuGet Package Manager en Visual Studio. Puede navegar hasta la consola del gestor de paquetes NuGet accediendo a Herramientas > Gestor de paquetes NuGet > Consola del gestor de paquetes.

Escriba el siguiente comando y pulse Intro:

Install-Package IronPdf

Este comando descargará e instalará el paquete IronPDF en su proyecto. Una vez instalado, podemos empezar a utilizar IronPDF.

Escribir código para crear y guardar archivos PDF

Para empezar con el flujo, escribe dos métodos: Save_Click y getFilePath en la clase Form1.cs. Estos métodos se utilizan conjuntamente para guardar el contenido de un cuadro de texto como un archivo PDF utilizando la funciónClase ChromePdfRenderer biblioteca. Repasemos cada método para entender cómo funciona.

Método Save_Click (Crear documento PDF)

El siguiente método es un manejador de eventos para un evento de clic de botón. La finalidad de este método es guardar el contenido de un cuadro de texto como archivo PDF.

private void Save_Click(object sender, EventArgs e)
{
    // Get the file path to save the PDF file.
    string filename = getFilePath();

    // If the file path is not empty or null, proceed with saving the PDF file.
    if (!String.IsNullOrEmpty(filePath))
    {
        // Create a new instance of the ChromePdfRenderer class.
        var renderer = new ChromePdfRenderer();

        // Render the file contents of the text box as a PDF document using the ChromePdfRenderer.
        var pdfDocument = renderer.RenderHtmlAsPdf(pdfContent.Text);

        // Save the PDF document to the specified file path using the SaveAs method.
        pdfDocument.SaveAs(filename);

        // Show a message box to indicate that the PDF file has been saved successfully.
        MessageBox.Show("PDF has been saved Successfully!");
    }
}
private void Save_Click(object sender, EventArgs e)
{
    // Get the file path to save the PDF file.
    string filename = getFilePath();

    // If the file path is not empty or null, proceed with saving the PDF file.
    if (!String.IsNullOrEmpty(filePath))
    {
        // Create a new instance of the ChromePdfRenderer class.
        var renderer = new ChromePdfRenderer();

        // Render the file contents of the text box as a PDF document using the ChromePdfRenderer.
        var pdfDocument = renderer.RenderHtmlAsPdf(pdfContent.Text);

        // Save the PDF document to the specified file path using the SaveAs method.
        pdfDocument.SaveAs(filename);

        // Show a message box to indicate that the PDF file has been saved successfully.
        MessageBox.Show("PDF has been saved Successfully!");
    }
}
Private Sub Save_Click(ByVal sender As Object, ByVal e As EventArgs)
	' Get the file path to save the PDF file.
	Dim filename As String = getFilePath()

	' If the file path is not empty or null, proceed with saving the PDF file.
	If Not String.IsNullOrEmpty(filePath) Then
		' Create a new instance of the ChromePdfRenderer class.
		Dim renderer = New ChromePdfRenderer()

		' Render the file contents of the text box as a PDF document using the ChromePdfRenderer.
		Dim pdfDocument = renderer.RenderHtmlAsPdf(pdfContent.Text)

		' Save the PDF document to the specified file path using the SaveAs method.
		pdfDocument.SaveAs(filename)

		' Show a message box to indicate that the PDF file has been saved successfully.
		MessageBox.Show("PDF has been saved Successfully!")
	End If
End Sub
VB   C#

Aquí tienes un desglose paso a paso de lo que hace este método:

  1. El método llama al método getFilePath para obtener la ruta del archivo donde se guardará el archivo PDF.

  2. Si la ruta del archivo no está vacía o es nula, el método procede a guardar el archivo PDF.

  3. El método crea una nueva instancia de la clase ChromePdfRenderer. Se trata de una biblioteca que proporciona una forma de convertir contenido HTML en documentos PDF utilizando el motor del navegador Google Chrome.

  4. A continuación, el método utiliza elMétodo RenderHtmlAsPdf de la clase ChromePdfRenderer para convertir el contenido HTML del cuadro de texto pdfContent en un documento PDF. Este documento PDF está asignado alVariable PdfDocument.

  5. El método guarda el documento PDF en la ruta de archivo especificada utilizando el métodoMétodo SaveAs de la clase PdfDocument.

  6. Por último, el método muestra un cuadro de mensaje para indicar que el archivo PDF se ha guardado correctamente.

Método getFilePath (Guardar archivos PDF)

Este método se utiliza para mostrar un SaveFileDialog al usuario para que seleccione una ruta de archivo donde se guardará el archivo PDF.

public string getFilePath()
{
    // Create a new instance of the SaveFileDialog class.
    SaveFileDialog saveFileDialog1 = new SaveFileDialog();

    // Set the initial directory where the SaveFileDialog will open.
    saveFileDialog1.InitialDirectory = @"D:\";

    // Set the title of the SaveFileDialog.
    saveFileDialog1.Title = "Save the PDF Files";

    // Set the SaveFileDialog to check if the specified path exists.
    saveFileDialog1.CheckPathExists = true;

    // Set the default extension for the file type.
    saveFileDialog1.DefaultExt = ".pdf";

    // Set the filter to display only PDF files or all files.
    saveFileDialog1.Filter = "PDF files (*.pdf)
*.pdf
All files (*.*)
*.*";

    // Set the filter index to display the PDF filter as the default.
    saveFileDialog1.FilterIndex = 2;

    // Set the RestoreDirectory property to true so that the SaveFileDialog
    // restores the current directory before closing.
    saveFileDialog1.RestoreDirectory = true;

    // Show the SaveFileDialog and get the result.
    if (saveFileDialog1.ShowDialog() == DialogResult.OK)
    {
        // If the user clicked the OK button in the SaveFileDialog, return the selected file path.
        return saveFileDialog1.FileName;
    }
    // If the user did not click the OK button, return an empty string.
    return "";
}
public string getFilePath()
{
    // Create a new instance of the SaveFileDialog class.
    SaveFileDialog saveFileDialog1 = new SaveFileDialog();

    // Set the initial directory where the SaveFileDialog will open.
    saveFileDialog1.InitialDirectory = @"D:\";

    // Set the title of the SaveFileDialog.
    saveFileDialog1.Title = "Save the PDF Files";

    // Set the SaveFileDialog to check if the specified path exists.
    saveFileDialog1.CheckPathExists = true;

    // Set the default extension for the file type.
    saveFileDialog1.DefaultExt = ".pdf";

    // Set the filter to display only PDF files or all files.
    saveFileDialog1.Filter = "PDF files (*.pdf)
*.pdf
All files (*.*)
*.*";

    // Set the filter index to display the PDF filter as the default.
    saveFileDialog1.FilterIndex = 2;

    // Set the RestoreDirectory property to true so that the SaveFileDialog
    // restores the current directory before closing.
    saveFileDialog1.RestoreDirectory = true;

    // Show the SaveFileDialog and get the result.
    if (saveFileDialog1.ShowDialog() == DialogResult.OK)
    {
        // If the user clicked the OK button in the SaveFileDialog, return the selected file path.
        return saveFileDialog1.FileName;
    }
    // If the user did not click the OK button, return an empty string.
    return "";
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Aquí tienes un desglose paso a paso de lo que hace este método:

  1. El método crea una nueva instancia de la clase SaveFileDialog. Esta clase forma parte de la biblioteca Windows Forms y proporciona un cuadro de diálogo que permite al usuario seleccionar una ruta de archivo donde se guardará el archivo PDF.

  2. El método establece varias propiedades del objeto SaveFileDialog para personalizar su comportamiento. La propiedad InitialDirectory establece el directorio donde se abrirá por primera vez el cuadro de diálogo. La propiedad Title establece el título del cuadro de diálogo. La propiedad CheckPathExists especifica si el cuadro de diálogo debe comprobar si la ruta especificada existe. La propiedad DefaultExt establece la extensión de archivo por defecto para el tipo de archivo. La propiedad Filtro establece los filtros de tipo de archivo que se muestran en el cuadro de diálogo. La propiedad FilterIndex establece el filtro por defecto a mostrar. Por último, la propiedad RestoreDirectory especifica si el cuadro de diálogo debe restaurar el directorio actual antes de cerrarse.

  3. El método muestra el SaveFileDialog llamando a su método ShowDialog. Este método muestra el cuadro de diálogo y devuelve un valor DialogResult que indica si el usuario ha pulsado el botón "Aceptar" o el botón Cancelar.

  4. Si el usuario pulsa el botón "Aceptar", el método devuelve la ruta del fichero que el usuario seleccionó accediendo a la propiedad FileName del SaveFileDialog.

  5. Si el usuario pulsa el botón "Cancelar" o cierra el cuadro de diálogo, el método devuelve una cadena vacía.

    Vamos a ejecutar el proyecto y ver la salida. Ejecute el proyecto y se abrirá el siguiente formulario.

    Cómo guardar un archivo PDF en C# (Tutorial para principiantes), Figura 7: Ejecución del proyecto Windows Forms

    **Ejecutar proyecto Windows Forms

    Introduzca el contenido de su PDF y haga clic en el botón "Guardar" como se muestra a continuación.

    Cómo guardar un archivo PDF en C# (Tutorial para principiantes), Figura 8: Cuadro de diálogo Guardar

    Cuadro de diálogo Guardar

    Se crea el siguiente PDF.

    Cómo guardar un archivo PDF en C# (Tutorial para principiantes), Figura 9: Archivo PDF creado

    Archivo PDF creado

    IronPDF proporciona una forma sencilla de convertir contenido HTML en documentos PDF y guardarlos en una ruta de archivo seleccionada por el usuario mediante la clase ChromePdfRenderer y el cuadro de diálogo SaveFileDialog.

Conclusión

Guardar archivos PDF desde una aplicación Windows Forms es un requisito común, y IronPDF proporciona un método fácil de usar y flexible para llevar a cabo esta tarea. Este artículo muestra cómo utilizar IronPDF para crear, añadir contenido y guardar archivos en una aplicación C# Windows Forms. Con IronPDF, los desarrolladores pueden generar archivos PDF de alta calidad desde sus aplicaciones con sólo unas líneas de código.

IronPDF ofrece una serie de funciones comoTutorial de conversión de HTML a PDF, PDFFusión de código de ejemplo, Guía para dividir páginas PDFyCómo extraer texto e imágenesy mucho más. IronPDF es gratuito para el desarrollo y está disponible bajo un acuerdo de licenciaLicencia comercial conuna prueba gratuitaque permite a los desarrolladores utilizarlo en proyectos comerciales e incluye asistencia y actualizaciones específicas. Además, IronPDF forma parte delIron Suiteque es un paquete de componentes de software .NET que incluye bibliotecas para la generación de códigos de barras.(IronBarcode)creación, lectura y manipulación de documentos Excel(IronXL), trabajando con extracción de texto(IronOCR)y mucho más. Adquirir la Iron Suite completa es una solución rentable, ya que puede obtener los cinco productos por el precio de dos.

< ANTERIOR
Cómo convertir CSHTML a PDF en C#
SIGUIENTE >
Cómo mostrar PDF de matriz de bytes en Blazor

¿Listo para empezar? Versión: 2024.12 acaba de salir

Descarga gratuita de NuGet Descargas totales: 11,622,374 Ver licencias >