Jak przekonwertować wykres Excela na obraz w C#
Jak przekonwertować wykres Excela na obraz w C#
Wykresy wizualnie reprezentują dane w plikach programu Excel. Podczas udostępniania raportów, tworzenia tablic lub generowania dokumentacji, możesz potrzebować eksportowania tych wykresów do plików obrazowych.
Dlaczego przekształcamy grafiki w obrazy?
- Włączenie danych wizualnych do stron internetowych lub prezentacji
- Wiadomości e-mail bez przeglądarki programu Excel
- Włączyć wykresy w plikach PDF lub drukowane układy
Przewodnik krok po kroku
Krok 1: Instalacja Aspose.Cells dla .NET
dotnet add package Aspose.Cells
Krok 2: Pobierz książkę roboczą
Workbook workbook = new Workbook("Dashboard.xlsx");
Worksheet sheet = workbook.Worksheets["Charts"];
Krok 3: Wybierz mapę
// Access the first chart on the worksheet
Chart chart = sheet.Charts[0];
Krok 4: Zestaw opcji eksportu
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 300,
VerticalResolution = 300,
Transparent = false
};
Krok 5: Konwersja wykresu do obrazu
chart.ToImage("chart_output.png", options);
Krok 6: Zapisz i sprawdź
To przechowuje grafikę jako plik PNG. Możesz również wybrać JPEG, BMP, TIFF itp.
Krok 7: Opcjonalne ulepszenia
Możesz dalej kontrolować rozmiar i jakość obrazu poprzez ustawienie:
// Control scaling
chart.ToImage("chart_highres.png", new ImageOrPrintOptions
{
ImageType = ImageType.Jpeg,
SmoothingMode = SmoothingMode.AntiAlias,
ChartImageWidth = 1200,
ChartImageHeight = 800
});
Kompletny kod przykładowy
using System;
using Aspose.Cells;
using Aspose.Cells.Rendering;
using System.Drawing.Drawing2D;
class Program
{
static void Main()
{
// Load the workbook
Workbook workbook = new Workbook("Dashboard.xlsx");
// Access the worksheet and first chart
Worksheet sheet = workbook.Worksheets["Charts"];
Chart chart = sheet.Charts[0];
// Set image export options
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 300,
VerticalResolution = 300,
SmoothingMode = SmoothingMode.AntiAlias,
ChartImageWidth = 1200,
ChartImageHeight = 800
};
// Export chart to image
chart.ToImage("chart_output.png", options);
Console.WriteLine("Chart successfully exported as image.");
}
}
Wspólne scenariusze i ustawienia
kwestia | Rozwiązanie |
---|---|
Karta pojawia się blurry | wzrost ChartImageWidth i ChartImageHeight |
Zdjęcie brakuje jasności | Używanie SmoothingMode = AntiAlias |
Karta jest wypełniona | Sprawdź marginesy lub ustawienia skalowania |