Como Converter Excel em Imagem Miniatura em C#

Como Converter Excel em Imagem Miniatura em C#

Ao trabalhar com recursos de visualização de documentos ou bibliotecas de conteúdo, imagens de miniatura fornecem uma referência visual rápida sem carregar todo o arquivo. este tutorial mostra como criar imagens de miniatura de arquivos do Excel usando Aspose.Cells para .NET.

Por que usar tambores?

  • Crie cartões de antecipação para galerias de documentos
  • Construa dashboards visuais de relatórios de spreadsheet
  • Adicionar imagens de peso leve a ferramentas de pesquisa ou gerenciamento de arquivos

Guia passo a passo

Passo 1: Instalar Aspose.Cells

dotnet add package Aspose.Cells

Passo 2: Carregue o livro de trabalho

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

Passo 3: Configure opções de renderização de tambor

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

Passo 4: Render a primeira folha de trabalho para uma imagem

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

Passo 5: Recuperar a imagem para dimensões de miniatura (opcional)

Você pode usar uma biblioteca de gráficos (por exemplo, System.Drawing) para resignar a imagem:

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: Use a imagem do Thumbnail

Agora você tem um miniatura leve adequado para previsões.

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

Melhores Práticas

RecomendaçãoObjetivo
Utilização OnePagePerSheet = trueEvitar a divisão de múltiplas páginas em imagens
Resolução inferiorOtimização para uma geração de miniaturas mais rápida
Recuperar imagem após renderizaçãoMais controle sobre escalagem e qualidade
 Português