So konvertieren Sie ein Arbeitsblatt in ein Bild in C#

So konvertieren Sie ein Arbeitsblatt in ein Bild in C#

Exportieren eines einzelnen Excel-Arbeitsblatts in ein Bildformat (z. B. PNG, JPEG) ist nützlich, wenn Vorschauen generiert, Diagramme exportiert oder schreibgeschützte visuelle Darstellungen des Inhalts von Tabellenkalkulationen geteilt werden. Dieser Leitfaden zeigt Ihnen, wie Sie ein Arbeitsblatt aus einer Excel-Arbeitsmappe in ein Bild mit Aspose.Cells für .NET konvertieren.

Anwendungsfälle

  • Vorschau eines bestimmten Arbeitsblatts generieren
  • Formatierte Berichte für E-Mail oder Dokumentation exportieren
  • Ein einzelnes Blatt in eine Webseite oder PDF einbetten

Schritt-für-Schritt-Anleitung

Schritt 1: Aspose.Cells für .NET installieren

dotnet add package Aspose.Cells

Schritt 2: Die Excel-Datei laden

Workbook workbook = new Workbook("SalesData.xlsx");
Worksheet sheet = workbook.Worksheets["Q1 Report"]; // Greifen Sie auf ein bestimmtes Arbeitsblatt zu

Schritt 3: Optionen für die Bilddarstellung definieren

ImageOrPrintOptions options = new ImageOrPrintOptions
{
    ImageType = ImageType.Png,
    OnePagePerSheet = true,
    HorizontalResolution = 200,
    VerticalResolution = 200,
    PrintingPageType = PrintingPageType.Default
};

Schritt 4: SheetRender-Objekt erstellen

SheetRender renderer = new SheetRender(sheet, options);

Schritt 5: Jede Seite in ein Bild rendern

for (int pageIndex = 0; pageIndex < renderer.PageCount; pageIndex++)
{
    string imageName = $"worksheet_q1_page_{pageIndex + 1}.png";
    renderer.ToImage(pageIndex, imageName);
}

Schritt 6: Die Bilder speichern

Dieser Code speichert automatisch ein Bild pro druckbarer Seite im Arbeitsblatt.

Schritt 7: Optionale Verbesserungen

Sie können zusätzliche Layout-Einstellungen anwenden:

// Zeigen Sie Rasterlinien im Ausgabebild an
options.ShowGridLines = true;

// Passen Sie den gesamten Inhalt auf eine einzige Seite an
options.AllColumnsInOnePagePerSheet = true;

Vollständiger Beispielcode

using System;
using Aspose.Cells;

class Program
{
    static void Main()
    {
        // Laden Sie die Excel-Arbeitsmappe
        Workbook workbook = new Workbook("SalesData.xlsx");

        // Greifen Sie auf ein bestimmtes Arbeitsblatt zu
        Worksheet sheet = workbook.Worksheets["Q1 Report"];

        // Definieren Sie die Optionen für die Bilddarstellung
        ImageOrPrintOptions options = new ImageOrPrintOptions
        {
            ImageType = ImageType.Png,
            OnePagePerSheet = true,
            HorizontalResolution = 200,
            VerticalResolution = 200,
            PrintingPageType = PrintingPageType.Default
        };

        // Aktivieren Sie Rasterlinien, wenn gewünscht
        options.ShowGridLines = true;

        // Rendern Sie das Blatt in Bild(er)
        SheetRender renderer = new SheetRender(sheet, options);

        for (int pageIndex = 0; pageIndex < renderer.PageCount; pageIndex++)
        {
            string imageName = $"worksheet_q1_page_{pageIndex + 1}.png";
            renderer.ToImage(pageIndex, imageName);
            Console.WriteLine($"Gespeichert: {imageName}");
        }

        Console.WriteLine("Arbeitsblatt erfolgreich in Bild(er) gerendert.");
    }
}

Häufige Szenarien & Fehlersuche

ProblemLösung
Abgeschnittene InhalteVerwenden Sie AllColumnsInOnePagePerSheet = true
Ausgabe ist von niedriger QualitätErhöhen Sie die Bildauflösung
Rasterlinien fehlenSetzen Sie ShowGridLines = true
 Deutsch