Como Converter Excel em Imagem com Fundo Transparente em C#

Como Converter Excel em Imagem com Fundo Transparente em C#

Ao criar visualizações de folhetos do Excel para uso em apresentações, sites ou composições de design, é muitas vezes útil remover fundos sólidos e preservar apenas o conteúdo. este artigo explica como converter um folheto de trabalho do Excel para uma imagem com um fundo transparente usando Aspose.Cells para .NET.

Por que usar fundos transparentes?

  • Conteúdo de folheto de camada acima de outros elementos de UI ou fundos
  • Redução do clutter visual em dashboards e exportações gráficas
  • Melhorar a integração com ferramentas gráficas e apresentações

Guia passo a passo

Passo 1: Instalar Aspose.Cells para .NET

dotnet add package Aspose.Cells

Passo 2: Carregue o livro de trabalho e a folha-alvo

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

Passo 3: Configurar o Rendering com um fundo transparente

ImageOrPrintOptions options = new ImageOrPrintOptions
{
    ImageType = ImageType.Png,
    OnePagePerSheet = true,
    Transparent = true
};

Passo 4: Desligue o fundo e as linhas de rede

sheet.PageSetup.PrintGridlines = false;
sheet.PageSetup.PrintHeadings = false;
sheet.DisplayGridlines = false;

Passo 5: Render Imagem usando SheetRender

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

Passo 6: Use o PNG Transparente

O resultado será uma imagem PNG limpa com apenas conteúdos de células renderados – sem fundo branco ou fronteiras.

Código de Exemplo Completo

using System;
using Aspose.Cells;

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

        // Hide gridlines and headings
        sheet.PageSetup.PrintGridlines = false;
        sheet.PageSetup.PrintHeadings = false;
        sheet.DisplayGridlines = false;

        // Set image rendering options with transparency
        ImageOrPrintOptions options = new ImageOrPrintOptions
        {
            ImageType = ImageType.Png,
            Transparent = true,
            OnePagePerSheet = true
        };

        // Render the sheet as an image
        SheetRender renderer = new SheetRender(sheet, options);
        renderer.ToImage(0, "transparent_output.png");

        Console.WriteLine("Worksheet rendered with transparent background.");
    }
}

Dicas para os melhores resultados

TipoDescrição
Usar PNG para TransparênciaOutros formatos como JPEG não suportam transparência
Conexão desligada explicitamenteEvite as linhas de fantasmas na exportação de imagens
Alinhamento de células de jogoAparência fino com ajustes de estilo celular
 Português