Com convertir una gamma de cèl·lules en imatge en C#

Com convertir una gamma de cèl·lules en imatge en C#

Exportació d’una gamma de cèl·lules a una imatge és útil per a la generació de miniatures, previstes o informes parcials. Aquesta guia mostra com convertir una gamma definida en Excel en un imatge de qualitat utilitzant Aspose.Cells per .NET.

Utilitza els casos

  • Taules de preus d’exportació o catàlegs de productes
  • Compartir una part d’una taula de treball sense exposar el fitxer complet
  • Capturar rangs dinàmiques per a dashboards o widgets

Guia de pas a pas

Pas 1: Instal·lar Aspose.Cells

dotnet add package Aspose.Cells

Pas 2: Carregar el llibre de treball i la taula de treball

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

Pas 3: Definició de l’àmbit d’exportació

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

Pas 4: Configuració d’opcions de rendiment d’imatge

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

Pas 5: Crear un SheetRender i Render el rang

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

Pas 6: Range d’exportació com a imatge

Aspose.Cells no té una classe RangeRender directa, però encara es pot clipar una imatge concentrant el rendiment a només una gamma seleccionada:

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

Pas 7: Salvar i comprovar la sortida

Ara tindràs una imatge crupada neta de la gamma seleccionada d’Excel.

Codi d’exemple complet

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

Tipus de solució de problemes

qüestióSolució
Imatge inclou runes / columnes addicionalsAssegureu-vos que l’àrea d’impressió està estrictament definida
L’àrea no recorreguda correctamentSet OnePagePerSheet = true
El text de BlurryAugmentar la resolució
 Català