exportar gráficos excel

Exportar gráfico do Excel como imagem (JPG, PNG) usando C#

No mundo da análise de dados, visualizar dados usando tabelas e gráficos é uma parte essencial da apresentação de informações complexas de maneira fácil de digerir. O Excel é uma ferramenta popular usada por muitos analistas de dados para criar tabelas e gráficos, mas às vezes é necessário exportar esses gráficos como imagens para serem usados em relatórios, apresentações ou outros documentos. A exportação de gráficos como imagens também tem a vantagem de manter a formatação e o apelo visual do gráfico original, mesmo quando inserido em um documento criado em outro programa. Neste artigo, exploraremos como exportar gráficos Excel como imagens usando a linguagem de programação C#, fornecendo a você os benefícios de uma visualização de dados clara e concisa.

API de processamento do Excel

Aspose.Cells Cloud é uma poderosa plataforma baseada em nuvem que oferece uma ampla gama de recursos para trabalhar com arquivos do Excel. Se você precisa manipular dados, realizar cálculos ou gerar relatórios, o Aspose.Cells Cloud o cobre. Um recurso particularmente útil é a capacidade de exportar gráficos do Excel como imagens. Portanto, para exportar um gráfico do Excel como uma imagem em .NET, vamos usar Aspose.Cells Cloud SDK for .NET. Esta solução baseada em nuvem fornece uma API RESTful que permite converter gráficos do Excel para JPG, [PNG](https://docs.fileformat.com /image/png/), BMP etc.

Pesquise Aspose.Cells-Cloud no gerenciador de pacotes NuGet e clique no botão “Adicionar pacote”. Além disso, também precisamos criar uma conta no Painel usando um endereço de e-mail válido.

Exportar gráfico do Excel como imagem usando C#

Use os trechos de código a seguir para exportar o gráfico do Excel como imagem usando C# .NET. Neste exemplo, vamos salvar um gráfico do Excel em JPG.

// Para exemplos completos e arquivos de dados, acesse 
https://github.com/aspose-cells-cloud/aspose-cells-cloud-dotnet/

// Obtenha as credenciais do cliente em https://dashboard.aspose.cloud/
string clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
string clientID = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
        
// criar instância CellsApi ao passar ClientID e ClientSecret
CellsApi cellsInstance = new CellsApi(clientID, clientSecret);

// Pasta de trabalho do Excel de entrada da unidade local
string input_Excel = "source.xlsx";
// nome da planilha que contém o gráfico
string sheetName = "Sheet1";
// índice do gráfico a ser exportado como imagem
int chartNumber = 0;
// Formato de imagem resultante como JPEG
string imageFormat = "JPEG";

try
{   
    // Leia a pasta de trabalho do Excel e carregue-a no armazenamento em nuvem
    cellsInstance.UploadFile(input_Excel, File.OpenRead(input_Excel));
                    
    // Chame a API para exportar o gráfico do Excel para a imagem
    var response = cellsInstance.CellsChartsGetWorksheetChart(input_Excel, sheetName, chartNumber, imageFormat, null);

    // imprimir mensagem de sucesso se a conversão for bem-sucedida
    if (response != null && response.Equals("OK"))
    {
        Console.WriteLine("Watermarks removed successfully from Excel !");
        Console.ReadKey();
    }
    
    // salvar a imagem resultante na unidade local
    using (var fileStream = new FileStream("resultant.jpg", System.IO.FileMode.OpenOrCreate, FileAccess.Write))
    {
        response.Seek(0, SeekOrigin.Begin);
        response.CopyTo(fileStream);
    }
}
catch (Exception ex)
{
    Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}

Abaixo estão os detalhes do trecho de código acima:

CellsApi cellsInstance = new CellsApi(clientID, clientSecret);

Crie um objeto da classe CellsApi ao passar as credenciais do cliente como argumentos.

cellsInstance.UploadFile(input_Excel, File.OpenRead(input_Excel));

Leia o arquivo do Excel e faça o upload para o armazenamento em nuvem.

var response = cellsInstance.CellsChartsGetWorksheetChart(input_Excel, sheetName, chartNumber, imageFormat, null);

Chame a API para exportar o gráfico do Excel como uma imagem. Passamos ‘JPEG’ como formato de imagem resultante.

A API suporta os seguintes formatos de imagem PNG/TIFF/JPEG/GIF/EMF/BMP.

using (var fileStream = new FileStream("resultant.jpg", System.IO.FileMode.OpenOrCreate, FileAccess.Write))
{
    response.Seek(0, SeekOrigin.Begin);
    response.CopyTo(fileStream);
}

Salve a imagem JPG na unidade local.

O Excel de entrada usado no exemplo acima pode ser baixado de source.xlsx.

Salvar gráfico do Excel como imagem usando comandos cURL

A exportação de um gráfico do Excel como uma imagem também pode ser feita usando o comando Aspose.Cells Cloud e cURL. Com esta opção, você pode integrar rapidamente a funcionalidade de conversão de gráfico em imagem em seu aplicativo sem a necessidade de codificação complexa. Simplesmente enviando uma solicitação para a API Aspose.Cells Cloud usando um comando cURL, você pode converter um gráfico do Excel em uma variedade de formatos de imagem.

Primeiro, precisamos instalar o cURL em nosso sistema e depois gerar um accessToken com base nas credenciais do cliente:

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

Em segundo lugar, use o seguinte comando para carregar o Excel de entrada para o armazenamento em nuvem:

curl -v "https://api.aspose.cloud/v3.0/cells/storage/file/{filePath}" \
-X PUT \
-F file=@{localFilePath} \
-H "Content-Type: multipart/form-data" \
-H "Authorization: Bearer {accessToken}"

Substitua {filePath} pelo caminho onde deseja armazenar o arquivo no armazenamento em nuvem, {localFilePath} pelo caminho de um Excel em seu sistema local e {accessToken} pelo seu token de acesso Aspose Cloud (gerado acima).

Agora, precisamos executar o seguinte comando para compactar e salvar o gráfico do Excel como imagem:

curl -v "https://api.aspose.cloud/v3.0/cells/{excelFile}/worksheets/Sheet1/charts/0?format={format}" \
-X GET \
-H  "accept: multipart/form-data" \
-H  "authorization: Bearer {accessToken}" \
-o  "Resultant.jpg"

Substitua {excelFile} pelo nome da pasta de trabalho do Excel disponível no armazenamento em nuvem. Substitua {format} pelo formato de imagem desejado, ou seja, PNG/TIFF/JPEG/GIF/EMF/BMP. Agora substitua {accessToken} pelo token de acesso gerado acima. O parâmetro -o é usado para baixar a saída na unidade local.

Observações Finais

Concluindo, exportar gráficos do Excel como imagens pode ser um recurso muito útil quando você precisa compartilhar ou publicar seus dados em um formato visual. Aspose.Cells Cloud fornece uma solução abrangente para esta tarefa, oferecendo uma ampla gama de ferramentas e APIs que podem ser usadas para exportar facilmente gráficos do Excel como imagens. A integração da plataforma com o comando cURL possibilita a automatização desse processo, tornando-o ainda mais eficiente e economizando tempo. Esteja você trabalhando em um projeto pequeno ou em uma análise de dados em grande escala, o Aspose.Cells Cloud pode ajudá-lo a atingir seus objetivos com rapidez e facilidade.

Artigos recomendados

Por favor, visite os links a seguir para saber mais sobre: