Come convertire Excel in immagine in miniatura in C#

Come convertire Excel in immagine in miniatura in C#

Quando si lavora con le funzionalità di preview del documento o le biblioteche di contenuti, le immagini miniature forniscono un rapido riferimento visivo senza caricare l’intero file. Questo tutorial dimostra come creare immagini miniature dai file Excel utilizzando Aspose.Cells per .NET.

Perché usare i Thumbnails?

  • Creare mappe di preview per le galerie di documenti
  • Costruire dashboard visivi dei rapporti di spreadsheet
  • Aggiungi visuali leggeri ad strumenti di ricerca o di gestione dei file

Guida passo dopo passo

Passo 1: Installare Aspose.Cells

dotnet add package Aspose.Cells

Passo 2: Carica il libro di lavoro

Workbook workbook = new Workbook("FinanceReport.xlsx");
Worksheet sheet = workbook.Worksheets[0];

Passo 3: Configurare le opzioni di rendering di Thumbnail

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

Passo 4: Trasferire il primo foglio di lavoro in un’immagine

SheetRender renderer = new SheetRender(sheet, options);
renderer.ToImage(0, "preview_temp.png");

Passo 5: Ristrutturare l’immagine in dimensioni di miniatura (opzionale)

È possibile utilizzare una libreria grafica (ad esempio System.Drawing) per riprodurre l’immagine:

using System.Drawing;

Bitmap original = new Bitmap("preview_temp.png");
Bitmap thumbnail = new Bitmap(original, new Size(160, 120));
thumbnail.Save("thumbnail.png");

Passo 6: Utilizzare l’immagine di Thumbnail

Ora hai un minimo leggero adatto per le previsioni.

Codice esemplare completo

using System;
using System.Drawing;
using Aspose.Cells;
using Aspose.Cells.Rendering;

class Program
{
    static void Main()
    {
        // Load Excel file
        Workbook workbook = new Workbook("FinanceReport.xlsx");
        Worksheet sheet = workbook.Worksheets[0];

        // Configure low-resolution options
        ImageOrPrintOptions options = new ImageOrPrintOptions
        {
            ImageType = ImageType.Png,
            HorizontalResolution = 96,
            VerticalResolution = 96,
            OnePagePerSheet = true
        };

        // Render full sheet as a temporary image
        SheetRender renderer = new SheetRender(sheet, options);
        renderer.ToImage(0, "preview_temp.png");

        // Resize to thumbnail
        using (Bitmap original = new Bitmap("preview_temp.png"))
        {
            Bitmap thumbnail = new Bitmap(original, new Size(160, 120));
            thumbnail.Save("thumbnail.png");
        }

        Console.WriteLine("Thumbnail image created from Excel worksheet.");
    }
}

Migliori pratiche

La raccomandazionescopo
Utilizzo OnePagePerSheet = trueEvitare la divisione di molte pagine nell’immagine
Risoluzione inferioreOttimizzazione per una più rapida generazione di miniature
Ristrutturare l’immagine dopo il renderingPiù controllo sulla scala e sulla qualità
 Italiano