Os gráficos no Excel são ferramentas poderosas para visualizar dados. No entanto, ao compartilhar relatórios ou integrar gráficas em outras aplicações como sites ou apresentações, você pode precisá-los como imagens em vez de objetos nativos do Excel. Este tutorial explica como converter um gráfico Excel para uma imagem usando Aspose.Cells para .NET.
Introdução
Os gráficos no Excel são uma ótima maneira de visualizar dados. No entanto, quando você compartilha relatórios ou integra gráficas em outras aplicações como sites ou apresentações, você pode precisá-los como imagens em vez de objetos nativos do Excel. Este tutorial explica como converter um gráfico Excel para uma imagem usando Aspose.Cells para .NET.
Guia passo a passo
Passo 1: Instalar Aspose.Cells para .NET
Para começar a trabalhar com Aspose.Cells, você precisa instalar o pacote através do NuGet Package Manager:
$ dotnet add package Aspose.Cells
Passo 2: Carregue o livro de trabalho
Carregue o seu livro de trabalho do Excel e acesse o folheto que contém o gráfico.
Workbook workbook = new Workbook("Dashboard.xlsx");
Worksheet sheet = workbook.Worksheets["Charts"];
Passo 3: Selecione o gráfico
Acesso ao gráfico desejado a partir do Charts
Coleta da folha de trabalho.
Chart chart = sheet.Charts[0];
Passo 4: Configurar opções de exportação
Configure as opções de exportação para especificar o tipo de imagem, resolução e outras configurações.
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 300,
VerticalResolution = 300,
Transparent = false
};
Passo 5: Converter um gráfico em imagem
Use o ToImage
método do objeto do gráfico para exportá-lo como uma 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:
chart.ToImage("chart_highres.png", new ImageOrPrintOptions
{
ImageType = ImageType.Jpeg,
SmoothingMode = SmoothingMode.AntiAlias,
ChartImageWidth = 1200,
ChartImageHeight = 800
});
Código de Exemplo Completo
Aqui está um exemplo completo que combina todos os passos em um programa:
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 |