Como Converter um Gráfico do Excel em Imagem em C#
Como Converter um Gráfico do Excel em Imagem em C#
Os gráficos representam visualmente os dados em arquivos do Excel. Ao compartilhar relatórios, construir painéis ou gerar documentação, você pode precisar exportar esses gráficos para arquivos de imagem. Este guia mostra como converter um gráfico do Excel para uma imagem usando Aspose.Cells para .NET.
Por que converter gráficos em imagens?
- Incorporar dados visuais em sites ou apresentações
- Relatórios de e-mail sem necessidade de visualizadores do Excel
- Incluir gráficos em PDFs ou layouts de impressão
Guia passo a passo
Passo 1: Instalar Aspose.Cells para .NET
dotnet add package Aspose.Cells
Passo 2: Carregue o livro de trabalho
Workbook workbook = new Workbook("Dashboard.xlsx");
Worksheet sheet = workbook.Worksheets["Charts"];
Passo 3: Selecione o gráfico
// Access the first chart on the worksheet
Chart chart = sheet.Charts[0];
Passo 4: Configurar opções de exportação
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 300,
VerticalResolution = 300,
Transparent = false
};
Passo 5: Converter um gráfico em imagem
chart.ToImage("chart_output.png", options);
Passo 6: Guarde e Verifique
Isso salva o seu gráfico como um arquivo PNG. Você também pode escolher JPEG, BMP, TIFF, etc.
Passo 7: Melhorias opcionais
Você pode controlar o tamanho e a qualidade da imagem adicionalmente, configurando:
// Control scaling
chart.ToImage("chart_highres.png", new ImageOrPrintOptions
{
ImageType = ImageType.Jpeg,
SmoothingMode = SmoothingMode.AntiAlias,
ChartImageWidth = 1200,
ChartImageHeight = 800
});
Código de Exemplo Completo
using System;
using Aspose.Cells;
using Aspose.Cells.Rendering;
using System.Drawing.Drawing2D;
class Program
{
static void Main()
{
// Load the workbook
Workbook workbook = new Workbook("Dashboard.xlsx");
// Access the worksheet and first chart
Worksheet sheet = workbook.Worksheets["Charts"];
Chart chart = sheet.Charts[0];
// Set image export options
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 300,
VerticalResolution = 300,
SmoothingMode = SmoothingMode.AntiAlias,
ChartImageWidth = 1200,
ChartImageHeight = 800
};
// Export chart to image
chart.ToImage("chart_output.png", options);
Console.WriteLine("Chart successfully exported as image.");
}
}
Escenários e Fixes Comuns
Questão | Solução |
---|---|
O gráfico aparece blurry | Aumento ChartImageWidth e ChartImageHeight |
A imagem não tem clareza | Utilização SmoothingMode = AntiAlias |
O gráfico é clipado | Verifique as margens da folha de trabalho ou as configurações de escalagem |