Come personalizzare Excel per il rendering delle immagini in C#

Come personalizzare Excel per il rendering delle immagini in C#

Quando si esportano fogli di lavoro o intervalli di Excel in immagini, è spesso necessario avere un controllo preciso su come appare il contenuto. Che si tratti di stampa, presentazione o integrazione, questo articolo dimostra come personalizzare il rendering delle immagini utilizzando Aspose.Cells per .NET.

Perché Personalizzare il Rendering?

  • Migliorare la chiarezza e la risoluzione dell’immagine
  • Mostrare o nascondere le linee della griglia, le formule o le intestazioni
  • Abbinare layout e dimensioni ai requisiti della documentazione
  • Regolare la trasparenza dello sfondo o i bordi

Guida Passo-Passo

Passo 1: Installare Aspose.Cells per .NET

dotnet add package Aspose.Cells

Passo 2: Caricare il Workbook e il Worksheet

Workbook workbook = new Workbook("Template.xlsx");
Worksheet worksheet = workbook.Worksheets["Sheet1"];

Passo 3: Configurare le Opzioni di Rendering Avanzate

ImageOrPrintOptions options = new ImageOrPrintOptions
{
    ImageType = ImageType.Png,
    HorizontalResolution = 300,
    VerticalResolution = 300,
    PrintWithStatusDialog = false,
    Transparent = false,
    OnePagePerSheet = true
};

Passo 4: Abilitare le Linee della Griglia e le Intestazioni (Opzionale)

// Mostra le linee della griglia nell'output
options.ShowGridLines = true;

// Renderizza le intestazioni di riga/colonna
options.ShowRowColumnHeaders = true;

Passo 5: Personalizzare le Impostazioni di Pagina

// Imposta per renderizzare l'intero foglio come una singola pagina
options.AllColumnsInOnePagePerSheet = true;
options.AllRowsInOnePagePerSheet = true;

Passo 6: Renderizzare in Immagine con SheetRender

SheetRender renderer = new SheetRender(worksheet, options);
renderer.ToImage(0, "custom_output.png");

Passo 7: Salvare e Verificare l’Output

Assicurati che l’immagine risultante rifletta il tuo layout personalizzato e le scelte visive.


Codice Esempio Completo

using System;
using Aspose.Cells;

class Program
{
    static void Main()
    {
        // Carica il file Excel
        Workbook workbook = new Workbook("Template.xlsx");
        Worksheet worksheet = workbook.Worksheets["Sheet1"];

        // Configura le opzioni di rendering avanzate
        ImageOrPrintOptions options = new ImageOrPrintOptions
        {
            ImageType = ImageType.Png,
            HorizontalResolution = 300,
            VerticalResolution = 300,
            PrintWithStatusDialog = false,
            Transparent = false,
            OnePagePerSheet = true,
            ShowGridLines = true,
            ShowRowColumnHeaders = true,
            AllColumnsInOnePagePerSheet = true,
            AllRowsInOnePagePerSheet = true
        };

        // Renderizza in immagine
        SheetRender renderer = new SheetRender(worksheet, options);
        renderer.ToImage(0, "custom_output.png");

        Console.WriteLine("Foglio di lavoro personalizzato salvato come immagine.");
    }
}

Suggerimenti per un Miglior Controllo

ImpostazioneDescrizione
ImageTypeScegli PNG, JPEG, BMP o TIFF
TransparentImposta true per uno sfondo trasparente
SmoothingModeMigliora i visual con l’anti-aliasing
ShowFormulasMostra le formule invece dei valori calcolati
ChartImageWidth / ChartImageHeightImposta la dimensione di output per i grafici
 Italiano