Excel in PDF C#

I file Excel sono ampiamente utilizzati per conservare e condividere i dati tabulari. D’altra parte, il formato PDF è stato tra i formati di documenti digitali dominanti. In alcuni casi, i file Excel devono essere convertiti in formato PDF a livello di codice. Per raggiungere questo obiettivo, questo articolo mostra come convertire Excel XLS XLSX in PDF in C#.

API C# per la conversione da Excel a PDF

L’API Aspose.Cells for .NET rende la conversione di fogli di calcolo Excel in PDF un gioco da ragazzi. Puoi scaricare la DLL dell’API o installarla usando NuGet.

PM> Install-Package Aspose.Cells

Come convertire un file Excel in PDF in C#

Usando Aspose.Cells for .NET, puoi convertire facilmente un file Excel in PDF in un paio di passaggi. Ecco come puoi salvare un file Excel usando l’API.

  • Carica il file Excel dal disco.
  • Salvalo come PDF nella posizione desiderata.

E questo è tutto. Ora, diamo un’occhiata a come eseguire la conversione da Excel a PDF tramite codice C#.

Converti Excel XLS o XLSX in PDF in C#

Aspose.Cells for .NET fornisce un’API facile da usare con la quale puoi convertire file Excel in PDF con questi semplici passaggi.

  1. Crea un’istanza della classe Workbook con il documento Excel che desideri convertire.
  2. Salva il documento in formato PDF specificando il formato di salvataggio come PDF utilizzando l’enumerazione SaveFormat

Il frammento di codice seguente mostra come convertire Excel XLS in PDF in C#.

// Instantiate the Workbook object with the Excel file
Workbook workbook = new Workbook("SampleExcel.xls");

// Save the document in PDF format
workbook.Save("outputPDF.pdf", SaveFormat.Pdf);

Conversione da C# Excel a PDF/A compatibile

PDF/A è una versione del PDF standardizzata ISO che vieta le funzionalità non adatte all’archiviazione a lungo termine. Il salvataggio di PDF in questo modo garantisce che nulla si rompa a lungo termine.

Il frammento di codice seguente mostra come convertire una cartella di lavoro di Excel in un formato PDF compatibile con PDF/A in C#.

// Instantiate new workbook
Workbook workbook = new Workbook();

// Insert a value into the cell A1
workbook.Worksheets[0].Cells[0, 0].PutValue("Testing PDF/A");

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

// Set the compliance type
pdfSaveOptions.Compliance = PdfCompliance.PdfA1b;

// Save the file
workbook.Save(dataDir + "output.pdf", pdfSaveOptions);

C# Excel XLS XLSX in PDF - Traccia la conversione

Aspose.Cells for .NET offre la possibilità di tenere traccia dell’avanzamento della conversione fornendo l’interfaccia IPageSavingCallback. È possibile creare una classe personalizzata che implementi questa interfaccia e assegnarne l’istanza alla proprietà PdfSaveOptions.PageSavingCallback.

Il frammento di codice seguente mostra come tenere traccia dell’avanzamento della conversione da Excel a PDF usando C#.

//load the workbook
Workbook workbook = new Workbook("PagesBook1.xlsx");

PdfSaveOptions pdfSaveOptions = new PdfSaveOptions();

//assign the custom class that implements IPageSavingCallback interface
pdfSaveOptions.PageSavingCallback = new TestPageSavingCallback();

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

Quella che segue è la classe personalizzata che implementa l’interfaccia IPageSavingCallback per tenere traccia del processo di conversione.

public class TestPageSavingCallback : IPageSavingCallback
{
    public void PageStartSaving(PageStartSavingArgs args)
    {
        Console.WriteLine("Start saving page index {0} of pages {1}", args.PageIndex, args.PageCount);

        //pages before page index 2 are not rendered.
        if (args.PageIndex < 2)
        {
            args.IsToOutput = false;
        }
    }

    public void PageEndSaving(PageEndSavingArgs args)
    {
        Console.WriteLine("End saving page index {0} of pages {1}", args.PageIndex, args.PageCount);

        //pages after page index 8 are not rendered.
        if (args.PageIndex >= 8)
        {
            args.HasMorePages = false;
        }
    }
}

Convertitore C# da Excel a PDF - Ottieni una licenza gratuita

È possibile utilizzare Aspose.Cells for .NET senza limitazioni di valutazione utilizzando una licenza temporanea.

Conclusione

In questo articolo, hai imparato come convertire i file XLSX o XLS di Excel in PDF in C#. Per ulteriori informazioni sulla conversione di file Excel in PDF, vai alla nostra documentazione, Converti cartella di lavoro Excel in PDF. In caso di domande, non esitare a farcelo sapere tramite il nostro forum.

Guarda anche