Excel vers PDF C#

Les fichiers Excel sont largement utilisés pour conserver et partager les données tabulaires. D’autre part, le format PDF a été parmi les principaux formats de documents numériques. Dans certains cas, les fichiers Excel doivent être convertis au format PDF par programmation. Pour y parvenir, cet article montre comment convertir Excel XLS XLSX en PDF en C#.

API C# pour la conversion d’Excel en PDF

L’API Aspose.Cells for .NET facilite la conversion des feuilles de calcul Excel en PDF. Vous pouvez soit télécharger la DLL de l’API ou l’installer à l’aide de NuGet.

PM> Install-Package Aspose.Cells

Comment convertir un fichier Excel en PDF en C#

En utilisant Aspose.Cells for .NET, vous pouvez facilement convertir un fichier Excel en PDF en quelques étapes. C’est ainsi que vous pouvez enregistrer un fichier Excel en utilisant l’API.

  • Chargez le fichier Excel à partir du disque.
  • Enregistrez-le au format PDF à l’emplacement souhaité.

Et c’est tout. Voyons maintenant comment effectuer une conversion Excel en PDF via le code C#.

Convertir Excel XLS ou XLSX en PDF en C#

Aspose.Cells for .NET fournit une API facile à utiliser avec laquelle vous pouvez convertir des fichiers Excel en PDF en suivant ces étapes simples.

  1. Instanciez la classe Workbook avec le document Excel que vous souhaitez convertir.
  2. Enregistrez le document au format PDF en spécifiant le format d’enregistrement au format PDF à l’aide de l’énumération SaveFormat

L’extrait de code suivant montre comment convertir Excel XLS en PDF en 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);

Conversion de PDF conforme à C# Excel vers PDF/A

PDF/A est une version normalisée ISO de PDF qui interdit les fonctionnalités qui ne conviennent pas à l’archivage à long terme. Enregistrer un PDF comme celui-ci garantit que rien ne se cassera à long terme.

L’extrait de code suivant montre comment convertir un classeur Excel au format PDF compatible PDF/A en 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 en PDF - Conversion de piste

Aspose.Cells for .NET offre la possibilité de suivre la progression de la conversion en fournissant l’interface IPageSavingCallback. Vous pouvez créer une classe personnalisée qui implémente cette interface et affecter son instance à la propriété PdfSaveOptions.PageSavingCallback.

L’extrait de code suivant montre comment suivre la progression de la conversion d’Excel en PDF à l’aide de 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);

Voici la classe personnalisée qui implémente l’interface IPageSavingCallback pour suivre le processus de conversion.

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;
        }
    }
}

Convertisseur C# Excel en PDF - Obtenez une licence gratuite

Vous pouvez utiliser Aspose.Cells for .NET sans limitations d’évaluation à l’aide d’une licence temporaire.

Conclusion

Dans cet article, vous avez appris à convertir des fichiers Excel XLSX ou XLS en PDF en C#. Pour plus d’informations sur la conversion de fichiers Excel en PDF, rendez-vous sur notre documentation, Convert Excel Workbook to PDF. Si vous avez des questions, n’hésitez pas à nous le faire savoir via notre forum.

Voir également