Cum să transformi o gamă de celule într-o imagine în C#

Cum să transformi o gamă de celule într-o imagine în C#

Exportarea unui interval de celule într-o imagine este utilă pentru generarea de miniere, previziuni sau rapoarte parțiale.Acest ghid arată cum să convertiți o gamă definită a celulelor în Excel în o imagine de înaltă calitate folosind Aspose.Cells pentru .NET.

Utilizarea cazurilor

  • Tablouri de prețuri de export sau cataloguri de produse
  • Partajarea unei pagini de lucru fără a expune fișierul complet
  • Capturează ranguri dinamice pentru dashboards sau widgets

Ghidul pas cu pas

Pasul 1: Instalați Aspose.Cells

dotnet add package Aspose.Cells

Pasul 2: Încărcați cartea de lucru și cartea de lucru

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

Pasul 3: Definiți pragul de export

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

Pasul 4: Configurați opțiunile de renderizare a imaginii

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

Pasul 5: Creați un SheetRender și Render Range

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

Pasul 6: Range de export ca imagine

Aspose.Cells nu are o clasă directă RangeRender, dar puteți încă clipa o imagine concentrându-vă pe rendering la doar o gamă selectată:

// 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");

Pasul 7: Salvați și verificați rezultatul

Acum veți avea o imagine clocotită curată a gama selectată de Excel.

Cod complet de exemplu

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

Sfaturi de rezolvare a problemelor

problemăSoluţie
Imaginea include rânduri / coloane suplimentareAsigurați-vă că zona de imprimare este strict definită
Războiul nu a fost încorporat corespunzătorSet OnePagePerSheet = true
Articole despre BlurryCreșterea setărilor de rezoluție
 Română