Jak przekonwertować wykres Excela na obraz w C#

Jak przekonwertować wykres Excela na obraz w C#

Wykresy wizualnie przedstawiają dane w plikach Excel. Podczas udostępniania raportów, budowania pulpitów nawigacyjnych lub generowania dokumentacji, może być konieczne wyeksportowanie tych wykresów do plików graficznych. Ten przewodnik pokazuje, jak przekonwertować wykres Excel na obraz za pomocą Aspose.Cells dla .NET.

Dlaczego konwertować wykresy na obrazy?

  • Osadzać dane wizualne na stronach internetowych lub w prezentacjach
  • Wysyłać raporty e-mailem bez potrzeby posiadania przeglądarek Excel
  • Zawierać wykresy w plikach PDF lub układach do druku

Przewodnik krok po kroku

Krok 1: Zainstaluj Aspose.Cells dla .NET

dotnet add package Aspose.Cells

Krok 2: Załaduj skoroszyt

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

Krok 3: Wybierz wykres

// Uzyskaj dostęp do pierwszego wykresu na arkuszu
Chart chart = sheet.Charts[0];

Krok 4: Ustaw opcje eksportu

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

Krok 5: Konwertuj wykres na obraz

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

Krok 6: Zapisz i zweryfikuj

To zapisuje twój wykres jako plik PNG. Możesz również wybrać JPEG, BMP, TIFF itd.

Krok 7: Opcjonalne ulepszenia

Możesz dalej kontrolować rozmiar i jakość obrazu, ustawiając:

// Kontrola skalowania
chart.ToImage("chart_highres.png", new ImageOrPrintOptions
{
    ImageType = ImageType.Jpeg,
    SmoothingMode = SmoothingMode.AntiAlias,
    ChartImageWidth = 1200,
    ChartImageHeight = 800
});

Pełny przykład kodu

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

class Program
{
    static void Main()
    {
        // Załaduj skoroszyt
        Workbook workbook = new Workbook("Dashboard.xlsx");

        // Uzyskaj dostęp do arkusza i pierwszego wykresu
        Worksheet sheet = workbook.Worksheets["Charts"];
        Chart chart = sheet.Charts[0];

        // Ustaw opcje eksportu obrazu
        ImageOrPrintOptions options = new ImageOrPrintOptions
        {
            ImageType = ImageType.Png,
            HorizontalResolution = 300,
            VerticalResolution = 300,
            SmoothingMode = SmoothingMode.AntiAlias,
            ChartImageWidth = 1200,
            ChartImageHeight = 800
        };

        // Eksportuj wykres do obrazu
        chart.ToImage("chart_output.png", options);

        Console.WriteLine("Wykres został pomyślnie wyeksportowany jako obraz.");
    }
}

Typowe scenariusze i rozwiązania

ProblemRozwiązanie
Wykres wydaje się nieostryZwiększ ChartImageWidth i ChartImageHeight
Obraz brakuje klarownościUżyj SmoothingMode = AntiAlias
Wykres jest przyciętySprawdź marginesy arkusza lub ustawienia skalowania
 Polski