Excel a PDF C#

Microsoft Excel es una herramienta esencial para gestionar hojas de cálculo. Sin embargo, hay momentos en que necesitas convertir tus hojas de Excel a PDF, ya sea para compartir informes o preservar el formato. En esta publicación del blog, exploraremos cómo convertir hojas de Excel a PDF utilizando C# y discutiremos varias opciones de personalización para el proceso de conversión.

Tabla de Contenidos

Biblioteca de Conversión de Excel a PDF en C#

La API Aspose.Cells para .NET simplifica el proceso de conversión de hojas de cálculo de Excel a PDF. Puedes descargar el DLL de la API o instalarlo directamente a través de NuGet:

PM> Install-Package Aspose.Cells

Pasos para Convertir un XLS de Excel a PDF

Usando Aspose.Cells para .NET, convertir un archivo de Excel a PDF es sencillo. Aquí te explicamos cómo hacerlo:

  1. Carga el archivo de Excel desde el disco.
  2. Guárdalo como un PDF en la ubicación deseada.

Veamos cómo implementar esto en código C#.

Convertir XLSX de Excel a PDF en C#

Con Aspose.Cells para .NET, puedes convertir fácilmente archivos de Excel a PDF siguiendo estos pasos:

  1. Instancia la clase Workbook con el documento de Excel que deseas convertir.
  2. Guarda el documento en formato PDF especificando el formato de guardado usando la enumeración SaveFormat.

Aquí tienes un fragmento de código que demuestra cómo convertir un archivo XLS de Excel a PDF en C#:

// Instanciar el objeto Workbook con el archivo de Excel
Workbook workbook = new Workbook("SampleExcel.xls");

// Guardar el documento en formato PDF
workbook.Save("outputPDF.pdf", SaveFormat.Pdf);

Convertir Excel a Formato PDF/A

PDF/A es una versión estandarizada por ISO de PDF diseñada para el archivo a largo plazo. Guardar archivos en este formato asegura que permanezcan accesibles con el tiempo.

Aquí te mostramos cómo convertir un libro de Excel a un formato compatible con PDF/A en C#:

// Instanciar un nuevo libro de trabajo
Workbook workbook = new Workbook();

// Insertar un valor en la celda A1
workbook.Worksheets[0].Cells[0, 0].PutValue("Prueba PDF/A");

// Definir PdfSaveOptions
PdfSaveOptions pdfSaveOptions = new PdfSaveOptions();

// Establecer el tipo de cumplimiento
pdfSaveOptions.Compliance = PdfCompliance.PdfA1b;

// Guardar el archivo
workbook.Save(dataDir + "output.pdf", pdfSaveOptions);

Rastrear la Conversión de Excel a PDF en C#

Aspose.Cells para .NET te permite rastrear el progreso de la conversión usando la interfaz IPageSavingCallback. Puedes crear una clase personalizada que implemente esta interfaz y asignar su instancia a la propiedad PdfSaveOptions.PageSavingCallback.

Aquí tienes un fragmento de código que demuestra cómo rastrear el progreso de la conversión de Excel a PDF:

// Cargar el libro de trabajo
Workbook workbook = new Workbook("PagesBook1.xlsx");

PdfSaveOptions pdfSaveOptions = new PdfSaveOptions();

// Asignar la clase personalizada que implementa la interfaz IPageSavingCallback
pdfSaveOptions.PageSavingCallback = new TestPageSavingCallback();

workbook.Save("DocumentConversionProgress.pdf", pdfSaveOptions);

La siguiente es la clase personalizada que implementa la interfaz IPageSavingCallback para rastrear el proceso de conversión:

public class TestPageSavingCallback : IPageSavingCallback
{
    public void PageStartSaving(PageStartSavingArgs args)
    {
        Console.WriteLine("Inicio de la guardado de la página índice {0} de páginas {1}", args.PageIndex, args.PageCount);

        // Las páginas antes del índice de la página 2 no se renderizan.
        if (args.PageIndex < 2)
        {
            args.IsToOutput = false;
        }
    }

    public void PageEndSaving(PageEndSavingArgs args)
    {
        Console.WriteLine("Fin de la guardado de la página índice {0} de páginas {1}", args.PageIndex, args.PageCount);

        // Las páginas después del índice de la página 8 no se renderizan.
        if (args.PageIndex >= 8)
        {
            args.HasMorePages = false;
        }
    }
}

Convertidor de Excel a PDF en Línea

También puedes utilizar nuestra aplicación de convertidor de Excel a PDF en línea, que está impulsada por Aspose.Cells. Esta aplicación gratuita no requiere registro, lo que la convierte en una opción conveniente para conversiones rápidas.

Obtener Convertidor de C# Excel a PDF Gratuito

Puedes usar Aspose.Cells para .NET sin limitaciones de evaluación obteniendo una licencia temporal gratuita.

Conclusión

Convertir hojas de Excel a PDF es un requisito común en varios escenarios de negocios y desarrollo. La API Aspose.Cells para .NET agiliza este proceso, permitiéndote automatizar conversiones dentro de tus aplicaciones C#. A lo largo de esta publicación del blog, hemos demostrado cómo convertir una hoja de Excel a PDF en C# y explorado varias opciones de personalización. Si tienes alguna pregunta, no dudes en comunicarte a través de nuestro foro.

Vea También