Cómo convertir Excel a imagen en miniatura en C#

Cómo convertir Excel a imagen en miniatura en C#

Al trabajar con las características de previsión de documentos o bibliotecas de contenido, las imágenes de miniatura proporcionan una referencia visual rápida sin cargar todo el archivo. Este tutorial muestra cómo crear imágenes de miniatura de archivos de Excel utilizando Aspose.Cells para .NET.

Por qué usar tambores?

  • Crear tarjetas de preview para galerías de documentos
  • Construcción de dashboards visuales de los informes de la hoja
  • Agregar visuales ligeros a las herramientas de búsqueda o de gestión de archivos

Guía paso a paso

Paso 1: Instalar Aspose.Cells

dotnet add package Aspose.Cells

Paso 2: Cargue el libro de trabajo

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

Paso 3: Configure las opciones de rendimiento de tambor

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

Paso 4: Render la primera hoja de trabajo a una imagen

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

Paso 5: Recuperar la imagen a dimensiones de miniatura (opcional)

Usted puede usar una biblioteca de gráficos (por ejemplo, System.Drawing) para resignar la imagen:

using System.Drawing;

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

Paso 6: Utilice la imagen de Thumbnail

Ahora tienes un miniatura ligero adecuado para previstas.

Código de ejemplo 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.");
    }
}

Mejores Prácticas

RecomendaciónObjetivo
Uso OnePagePerSheet = trueEvitar la división de páginas en la imagen
Resolución bajaOptimización para una generación de miniatura más rápida
Recuperar la imagen después de renderizarMás control sobre la escala y la calidad
 Español