Como Converter uma Única Célula do Excel em Imagem em C#

Como Converter uma Única Célula do Excel em Imagem em C#

Às vezes, tudo o que você precisa é de um único valor — um preço, um rótulo, um código — e você deseja exportar essa célula visualmente. Este tutorial mostra como isolar e renderizar uma única célula do Excel em uma imagem usando Aspose.Cells para .NET.

Casos de Uso do Mundo Real

  • Exportar preços ou totais para exibições de produtos
  • Isolar métricas-chave para painéis
  • Gerar miniaturas de imagem para valores individuais

Guia Passo a Passo

Passo 1: Instalar Aspose.Cells para .NET

dotnet add package Aspose.Cells

Passo 2: Carregar a Pasta de Trabalho e a Planilha

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

Passo 3: Selecionar a Célula Alvo

// Exemplo: Célula B5
Cell cell = sheet.Cells["B5"];

Passo 4: Definir a Área de Impressão para a Célula

// Imprimir apenas aquela célula
sheet.PageSetup.PrintArea = "B5";

Passo 5: Configurar Opções de Renderização de Imagem

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

Passo 6: Renderizar Usando SheetRender

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

Passo 7: Salvar e Revisar a Saída

Você obterá um PNG limpo mostrando apenas aquela célula com a formatação intacta.


Código de Exemplo Completo

using System;
using Aspose.Cells;

class Program
{
    static void Main()
    {
        // Carregar a pasta de trabalho
        Workbook workbook = new Workbook("KPIReport.xlsx");

        // Acessar a planilha e a célula alvo
        Worksheet sheet = workbook.Worksheets[0];
        Cell cell = sheet.Cells["B5"];

        // Definir a área de impressão para aquela célula
        sheet.PageSetup.PrintArea = "B5";

        // Configurações de exportação de imagem
        ImageOrPrintOptions options = new ImageOrPrintOptions
        {
            ImageType = ImageType.Png,
            OnePagePerSheet = true,
            HorizontalResolution = 300,
            VerticalResolution = 300
        };

        // Renderizar e salvar
        SheetRender renderer = new SheetRender(sheet, options);
        renderer.ToImage(0, "cell_b5_output.png");

        Console.WriteLine("Célula B5 exportada com sucesso como imagem.");
    }
}

Dicas Úteis

DicaDescrição
Aumentar a legibilidadeAumentar a resolução ou o tamanho da fonte
Adicionar fundo ou bordaFormatar a célula antes da renderização
Alinhar conteúdoUsar cell.GetStyle() para ajustar o alinhamento ou o preenchimento
 Português