Cum să convertiți o pagină de lucru în imagine în C#

Cum să convertiți o pagină de lucru în imagine în C#

Exportarea unui singur etichetă de lucru Excel într-un format de imagine (de exemplu, PNG, JPEG) este utilă atunci când se generează previziuni, se exportă diagrame sau se împărtășesc reprezentări vizuale doar citite ale conținutului de hârtie.

Utilizarea cazurilor

  • Generarea unei previziuni a unui anumit panou de lucru
  • Export rapoarte formatate pentru e-mail sau documentație
  • Încorporează o singură foaie într-o pagină web sau PDF

Ghidul pas cu pas

Pasul 1: Instalați Aspose.Cells pentru .NET

dotnet add package Aspose.Cells

Pasul 2: Încărcați fișierul Excel

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

Pasul 3: Definiți opțiunile de renderizare a imaginii

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

Pasul 4: Creați un obiect SheetRender

SheetRender renderer = new SheetRender(sheet, options);

Pasul 5: Întoarceți fiecare pagină într-o imagine

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

Pasul 6: Salvați imaginile

Acest cod salvează automat o imagine pentru fiecare pagină imprimabilă în cartea de lucru.

Pasul 7: Îmbunătățiri opționale

Puteți aplica setări suplimentare de layout:

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

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

Cod complet de exemplu

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).");
    }
}

Scenariile comune și rezolvarea problemelor

problemăSoluţie
Cut-off conținutUse AllColumnsInOnePagePerSheet = true
Producția este de calitate scăzutăCreșterea rezoluției imaginii
Liniile lipsiteSet ShowGridLines = true
 Română