Jak převést pracovní list na obrázek v C#

Jak převést pracovní list na obrázek v C#

Exportování jedné pracovní desky Excel do formátu obrazu (např. PNG, JPEG) je užitečné při vytváření předpovědí, exportování grafů nebo sdílení přečtených pouze vizuálních zobrazení obsahu šípkové desky.Tento průvodce vám ukazuje, jak konverzi jedné pracovní desky z pracovní desky Excel do obrazu pomocí Aspose.Cells pro .NET.

Případové studie

  • Vytvořte předpověď konkrétního pracovního listu
  • Export formátované zprávy pro e-mail nebo dokumentaci
  • Vložte jeden list do webové stránky nebo PDF

Krok za krokem průvodce

Krok 1: Instalace Aspose.Cells pro .NET

dotnet add package Aspose.Cells

Krok 2: Stáhněte soubor Excel

Workbook workbook = new Workbook("SalesData.xlsx");
Worksheet sheet = workbook.Worksheets["Q1 Report"]; // Access specific worksheet

Krok 3: Definujte možnosti renderování obrazu

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

Krok 4: Vytvoření SheetRender Object

SheetRender renderer = new SheetRender(sheet, options);

Krok 5: Přeneste každou stránku na obrázek

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

Krok 6: Zachraňte obrázky

Tento kód automaticky ukládá jeden obrázek na tiskatelnou stránku v pracovním listu.

Krok 7: Volitelné vylepšení

Můžete použít další layout nastaven:

// Show gridlines in the output image
options.ShowGridLines = true;

// Fit all content on a single page
options.AllColumnsInOnePagePerSheet = true;

Kompletní příkladový kód

using System;
using Aspose.Cells;

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

        // Access a specific worksheet
        Worksheet sheet = workbook.Worksheets["Q1 Report"];

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

        // Enable gridlines if desired
        options.ShowGridLines = true;

        // Render the sheet to image(s)
        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($"Saved: {imageName}");
        }

        Console.WriteLine("Worksheet successfully rendered to image(s).");
    }
}

Společné scénáře a řešení problémů

ProblémŘešení
Cut-off obsahPoužití AllColumnsInOnePagePerSheet = true
Výstup je nízká kvalitaZvýšení rozlišení obrazu
Chybí linieSetování ShowGridLines = true
 Čeština