So konvertieren Sie einen Zellbereich in ein Bild in C#

So konvertieren Sie einen Zellbereich in ein Bild in C#

Wird ein Zellbereich in ein Bild exportiert, ist nützlich für die Erzeugung von Thumbnails, Previews oder teilweisen Berichten.Dieser Leitfaden zeigt, wie man ein definiertes Zellbereich in Excel in ein hochwertiges Bild mit Aspose.Cells für .NET umwandelt**.

Anwendungsfälle

  • Exportpreistabellen oder Produktkatalogen
  • Teilen Sie einen Teil eines Arbeitsblattes, ohne die vollständige Datei zu enthüllen
  • Fangen Sie dynamische Rangen für Dashboards oder Widgets auf

Schritt für Schritt Guide

Schritt 1: Installieren Sie Aspose.Cells

dotnet add package Aspose.Cells

Schritt 2: Laden Sie das Arbeitsbuch und das Arbeitsblatt herunter

Workbook workbook = new Workbook("DataSet.xlsx");
Worksheet worksheet = workbook.Worksheets[0];

Schritt 3: Bestimmen Sie den Ausfuhrbereich

// Specify a range like A1:D10
Range range = worksheet.Cells.CreateRange("A1", "D10");

Schritt 4: Konfigurieren Sie Image Rendering Optionen

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

Schritt 5: Erstellen Sie einen SheetRender und Render die Range

// You can use SheetRender with printing bounds if needed
SheetRender renderer = new SheetRender(worksheet, options);

Schritt 6: Export Range als Bild

Aspose.Cells hat keine direkte RangeRender-Klasse, aber Sie können immer noch ein Bild klippen, indem Sie Rendering auf nur einen ausgewählten Bereich konzentrieren:

// Set print area manually for the worksheet
worksheet.PageSetup.PrintArea = "A1:D10";

// Recreate SheetRender with print settings now applied
renderer = new SheetRender(worksheet, options);

// Render and export
renderer.ToImage(0, "range_output.png");

Schritt 7: Speichern und Überprüfen des Ausgangs

Sie erhalten jetzt eine saubere, gekrümmte Bild der ausgewählten Excel-Range.

Vollständige Example Code

using System;
using Aspose.Cells;

class Program
{
    static void Main()
    {
        // Load the workbook
        Workbook workbook = new Workbook("DataSet.xlsx");

        // Access the first worksheet
        Worksheet worksheet = workbook.Worksheets[0];

        // Define range to export (A1 to D10)
        Range range = worksheet.Cells.CreateRange("A1", "D10");

        // Set the print area to this range
        worksheet.PageSetup.PrintArea = range.RefersTo;

        // Set image export options
        ImageOrPrintOptions options = new ImageOrPrintOptions
        {
            ImageType = ImageType.Png,
            HorizontalResolution = 200,
            VerticalResolution = 200,
            OnePagePerSheet = true
        };

        // Render only the specified range
        SheetRender renderer = new SheetRender(worksheet, options);

        // Export to image
        renderer.ToImage(0, "range_output.png");

        Console.WriteLine("Cell range exported successfully as image.");
    }
}

Troubleshooting Tipps

ThemaLösung
Bild enthält zusätzliche Zeilen / SpaltenStellen Sie sicher, dass das Druckbereich streng definiert ist
Range nicht ordnungsgemäß gekrümmertSet OnePagePerSheet = true
Blurry TextErhöhung der Auflösungsmöglichkeiten
 Deutsch