Como Personalizar o Renderização de Imagem do Excel em C#
Como Personalizar o Renderização de Imagem do Excel em C#
Quando você exporta planilhas ou intervalos do Excel para imagens, muitas vezes precisa de controle preciso sobre como o conteúdo aparece. Seja para impressão, apresentação ou incorporação, este artigo demonstra como personalizar a renderização de imagens usando Aspose.Cells for .NET.
Por que Personalizar a Renderização?
- Melhorar a clareza e a resolução da imagem
- Mostrar ou ocultar linhas de grade, fórmulas ou cabeçalhos
- Ajustar layout e dimensionamento às exigências da documentação
- Ajustar a transparência do fundo ou bordas
Guia Passo a Passo
Passo 1: Instalar Aspose.Cells for .NET
dotnet add package Aspose.Cells
Passo 2: Carregar o Workbook e a Worksheet
Workbook workbook = new Workbook("Template.xlsx");
Worksheet worksheet = workbook.Worksheets["Sheet1"];
Passo 3: Configurar Opções Avançadas de Renderização
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 300,
VerticalResolution = 300,
PrintWithStatusDialog = false,
Transparent = false,
OnePagePerSheet = true
};
Passo 4: Ativar Linhas de Grade e Cabeçalhos (Opcional)
// Mostrar linhas de grade na saída
options.ShowGridLines = true;
// Renderizar cabeçalhos de linha/coluna
options.ShowRowColumnHeaders = true;
Passo 5: Personalizar Configurações da Página
// Definir para renderizar toda a planilha como uma única página
options.AllColumnsInOnePagePerSheet = true;
options.AllRowsInOnePagePerSheet = true;
Passo 6: Renderizar para Imagem com SheetRender
SheetRender renderer = new SheetRender(worksheet, options);
renderer.ToImage(0, "custom_output.png");
Passo 7: Salvar e Verificar a Saída
Certifique-se de que a imagem resultante reflita seu layout e escolhas visuais personalizados.
Código de Exemplo Completo
using System;
using Aspose.Cells;
class Program
{
static void Main()
{
// Carregar arquivo Excel
Workbook workbook = new Workbook("Template.xlsx");
Worksheet worksheet = workbook.Worksheets["Sheet1"];
// Configurar opções avançadas de renderização
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 300,
VerticalResolution = 300,
PrintWithStatusDialog = false,
Transparent = false,
OnePagePerSheet = true,
ShowGridLines = true,
ShowRowColumnHeaders = true,
AllColumnsInOnePagePerSheet = true,
AllRowsInOnePagePerSheet = true
};
// Renderizar para imagem
SheetRender renderer = new SheetRender(worksheet, options);
renderer.ToImage(0, "custom_output.png");
Console.WriteLine("Planilha personalizada salva como imagem.");
}
}
Dicas para Melhor Controle
Configuração | Descrição |
---|---|
ImageType | Escolha PNG, JPEG, BMP ou TIFF |
Transparent | Defina como verdadeiro para fundo transparente |
SmoothingMode | Melhore visuais usando suavização |
ShowFormulas | Mostrar fórmulas em vez de valores calculados |
ChartImageWidth / ChartImageHeight | Defina o tamanho de saída para gráficos |