exportar tablas de excel

Exportar gráfico de Excel como imagen (JPG, PNG) usando C#

En el mundo del análisis de datos, la visualización de datos mediante cuadros y gráficos es una parte esencial de la presentación de información compleja de una manera fácilmente digerible. Excel es una herramienta popular utilizada por muchos analistas de datos para crear cuadros y gráficos, pero a veces es necesario exportar estos cuadros como imágenes para usar en informes, presentaciones u otros documentos. Exportar gráficos como imágenes también tiene la ventaja de mantener el formato y el atractivo visual del gráfico original, incluso cuando se inserta en un documento creado en un programa diferente. En este artículo, exploraremos cómo exportar gráficos Excel como imágenes usando el lenguaje de programación C#, brindándole los beneficios de una visualización de datos clara y concisa.

API de procesamiento de Excel

Aspose.Cells Cloud es una potente plataforma basada en la nube que ofrece una amplia gama de funciones para trabajar con archivos de Excel. Ya sea que necesite manipular datos, realizar cálculos o generar informes, Aspose.Cells Cloud lo tiene cubierto. Una característica particularmente útil es la capacidad de exportar gráficos de Excel como imágenes. Entonces, para exportar un gráfico de Excel como una imagen en .NET, vamos a usar Aspose.Cells Cloud SDK for .NET. Esta solución basada en la nube proporciona una API RESTful que le permite convertir gráficos de Excel a JPG, [PNG](https://docs.fileformat.com /image/png/), BMP, etc.

Busque Aspose.Cells-Cloud en el administrador de paquetes NuGet y haga clic en el botón “Agregar paquete”. Además, también necesitamos crear una cuenta en Dashboard usando una dirección de correo electrónico válida.

Exportar gráfico de Excel como imagen usando C#

Utilice los siguientes fragmentos de código para exportar el gráfico de Excel como imagen usando C# .NET. En este ejemplo, vamos a guardar un gráfico de Excel en JPG.

// Para obtener ejemplos completos y archivos de datos, vaya a 
https://github.com/aspose-cells-cloud/aspose-cells-cloud-dotnet/

// Obtenga las credenciales del cliente de https://dashboard.aspose.cloud/
string clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
string clientID = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
        
// cree una instancia de CellsApi mientras pasa ClientID y ClientSecret
CellsApi cellsInstance = new CellsApi(clientID, clientSecret);

// Ingrese el libro de trabajo de Excel desde la unidad local
string input_Excel = "source.xlsx";
// nombre de la hoja de trabajo que contiene el gráfico
string sheetName = "Sheet1";
// índice del gráfico que se exportará como imagen
int chartNumber = 0;
// Formato de imagen resultante como JPEG
string imageFormat = "JPEG";

try
{   
    // Lea el libro de Excel y cárguelo en el almacenamiento en la nube
    cellsInstance.UploadFile(input_Excel, File.OpenRead(input_Excel));
                    
    // Llame a la API para exportar el gráfico de Excel a la imagen
    var response = cellsInstance.CellsChartsGetWorksheetChart(input_Excel, sheetName, chartNumber, imageFormat, null);

    // imprimir mensaje de éxito si la conversión es exitosa
    if (response != null && response.Equals("OK"))
    {
        Console.WriteLine("Watermarks removed successfully from Excel !");
        Console.ReadKey();
    }
    
    // guardar la imagen resultante en la unidad 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);
}

A continuación se muestran los detalles del fragmento de código anterior:

CellsApi cellsInstance = new CellsApi(clientID, clientSecret);

Cree un objeto de la clase CellsApi mientras pasa las credenciales del cliente como argumentos.

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

Lea el archivo de Excel y cárguelo en el almacenamiento en la nube.

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

Llame a la API para exportar el gráfico de Excel como una imagen. Hemos pasado ‘JPEG’ como formato de imagen resultante.

La API admite los siguientes formatos de imagen 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);
}

Guarde la imagen JPG en la unidad local.

El Excel de entrada utilizado en el ejemplo anterior se puede descargar desde source.xlsx.

Guarde el gráfico de Excel como imagen usando los comandos cURL

También se puede exportar un gráfico de Excel como una imagen usando el comando Aspose.Cells Cloud y cURL. Con esta opción, puede integrar rápidamente la funcionalidad de conversión de gráfico a imagen en su aplicación sin necesidad de una codificación compleja. Simplemente enviando una solicitud a Aspose.Cells Cloud API usando un comando cURL, puede convertir un gráfico de Excel a una variedad de formatos de imagen.

Primero, necesitamos instalar cURL en nuestro sistema y luego generar un token de acceso basado en las credenciales de su 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"

En segundo lugar, use el siguiente comando para cargar el Excel de entrada al almacenamiento en la nube:

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}"

Reemplace {filePath} con la ruta donde desea almacenar el archivo en el almacenamiento en la nube, {localFilePath} con la ruta de un Excel en su sistema local y {accessToken} con su token de acceso a Aspose Cloud (generado arriba).

Ahora, necesitamos ejecutar el siguiente comando para comprimir y guardar el gráfico de Excel como imagen:

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"

Reemplace {excelFile} con el nombre del libro de trabajo de Excel disponible en el almacenamiento en la nube. Reemplace {formato} con el formato de imagen deseado, es decir, PNG/TIFF/JPEG/GIF/EMF/BMP. Ahora reemplace {accessToken} con el token de acceso generado arriba. El parámetro -o se usa para descargar la salida en la unidad local.

Observaciones finales

En conclusión, exportar gráficos de Excel como imágenes puede ser una característica muy útil cuando necesita compartir o publicar sus datos en un formato visual. Aspose.Cells Cloud proporciona una solución integral para esta tarea, ofreciendo una amplia gama de herramientas y API que se pueden usar para exportar fácilmente gráficos de Excel como imágenes. La integración de la plataforma con el comando cURL permite automatizar este proceso, haciéndolo aún más eficiente y ahorrando tiempo. Ya sea que esté trabajando en un proyecto pequeño o en un análisis de datos a gran escala, Aspose.Cells Cloud puede ayudarlo a lograr sus objetivos de manera rápida y sencilla.

Enlaces útiles

Artículos recomendados

Visite los siguientes enlaces para obtener más información sobre: