Comment convertir un graphique Excel en image en C#

Comment convertir un graphique Excel en image en C#

Charts représentent visuellement des données dans des fichiers Excel. Lors du partage de rapports, de la création de tableaux de bord ou de la génération de documentation, vous pourriez avoir besoin d’exporter ces graphiques vers des fichiers image. Ce guide montre comment convertir un graphique Excel en image en utilisant Aspose.Cells for .NET.

Pourquoi convertir les graphiques en images ?

  • Intégrer des données visuelles dans des sites web ou des présentations
  • Envoyer des rapports par e-mail sans avoir besoin de visionneuses Excel
  • Inclure des graphiques dans des PDF ou des mises en page imprimées

Guide étape par étape

Étape 1 : Installer Aspose.Cells for .NET

dotnet add package Aspose.Cells

Étape 2 : Charger le classeur

Workbook workbook = new Workbook("Dashboard.xlsx");
Worksheet sheet = workbook.Worksheets["Charts"];

Étape 3 : Sélectionner le graphique

// Accéder au premier graphique sur la feuille de calcul
Chart chart = sheet.Charts[0];

Étape 4 : Définir les options d’exportation

ImageOrPrintOptions options = new ImageOrPrintOptions
{
    ImageType = ImageType.Png,
    HorizontalResolution = 300,
    VerticalResolution = 300,
    Transparent = false
};

Étape 5 : Convertir le graphique en image

chart.ToImage("chart_output.png", options);

Étape 6 : Sauvegarder et vérifier

Cela enregistre votre graphique en tant que fichier PNG. Vous pouvez également choisir JPEG, BMP, TIFF, etc.

Étape 7 : Améliorations optionnelles

Vous pouvez contrôler davantage la taille et la qualité de l’image en définissant :

// Contrôler l'échelle
chart.ToImage("chart_highres.png", new ImageOrPrintOptions
{
    ImageType = ImageType.Jpeg,
    SmoothingMode = SmoothingMode.AntiAlias,
    ChartImageWidth = 1200,
    ChartImageHeight = 800
});

Exemple de code complet

using System;
using Aspose.Cells;
using Aspose.Cells.Rendering;
using System.Drawing.Drawing2D;

class Program
{
    static void Main()
    {
        // Charger le classeur
        Workbook workbook = new Workbook("Dashboard.xlsx");

        // Accéder à la feuille de calcul et au premier graphique
        Worksheet sheet = workbook.Worksheets["Charts"];
        Chart chart = sheet.Charts[0];

        // Définir les options d'exportation d'image
        ImageOrPrintOptions options = new ImageOrPrintOptions
        {
            ImageType = ImageType.Png,
            HorizontalResolution = 300,
            VerticalResolution = 300,
            SmoothingMode = SmoothingMode.AntiAlias,
            ChartImageWidth = 1200,
            ChartImageHeight = 800
        };

        // Exporter le graphique en image
        chart.ToImage("chart_output.png", options);

        Console.WriteLine("Graphique exporté avec succès en tant qu'image.");
    }
}

Scénarios courants et solutions

ProblèmeSolution
Le graphique apparaît flouAugmenter ChartImageWidth et ChartImageHeight
L’image manque de clartéUtiliser SmoothingMode = AntiAlias
Le graphique est coupéVérifier les marges de la feuille de calcul ou les paramètres d’échelle
 Français