Excel a PDF

Convertir XLSB a PDF | Desarrollar un convertidor de Excel a PDF en línea

El formato XLSB especifica el formato de archivo binario de Excel y es bastante popular porque se puede leer y escribir mucho más rápido, lo que lo hace extremadamente útil para hojas de cálculo muy grandes. Sin embargo, para ver el archivo XLSB, debe utilizar Microsoft Excel u OpenOffice Calc (multiplataforma).Pero la conversión de estos archivos a PDF es una solución viable. Por lo tanto, en este artículo, analizaremos los detalles de cómo podemos convertir XLSB a formato PDF mediante programación.

API de conversión de Excel

Aspose.Cells Cloud es una API de procesamiento de archivos de Excel basada en arquitectura REST que ofrece la capacidad de crear, editar y transformar archivos en formatos de archivo compatibles. Vamos a utilizar Aspose.Cells Cloud SDK para .NET,, por lo que el primer paso es instalarlo en el sistema. Visite el siguiente artículo para obtener más información sobre cómo instalar los SDK de Aspose.Cloud.

Conversión de XLSB a PDF en C#

Siga los pasos que se detallan a continuación para realizar la conversión de XLSB a PDF utilizando C# .NET.

Convertir Excel a PDF

En esta sección, analizaremos los pasos para convertir el libro de trabajo completo al formato PDF.

  • En primer lugar, cree una instancia de la clase CellsApi mientras pasa los detalles de ClientID y ClientSecret como argumentos.
  • En segundo lugar, lea el archivo XLSB de entrada en el objeto de flujo usando File.OpenRead.
  • En tercer lugar, cargue el archivo XLSB al almacenamiento en la nube utilizando el método UploadFile(…) de la clase CellsApi.
  • Por último, llame al método CellsWorkbookGetWorkbook(..) tomando el nombre XLSB de entrada, los detalles del formato de salida y el nombre del archivo PDF resultante.
// Para obtener ejemplos completos y archivos de datos, visite 
https://github.com/aspose-cells-cloud/aspose-cells-cloud-dotnet/

// Obtenga las credenciales del cliente desde https://dashboard.aspose.cloud/
string clientSecret = "d757548a9f2558c39c2feebdf85b4c44";
string clientID = "4db2f826-bf9c-42e7-8b2a-8cbca2d15553";
        
// Crea una instancia de CellsApi mientras pasas ClientID y ClientSecret
CellsApi instance = new CellsApi(clientID, clientSecret);

// nombre del archivo de entrada de Excel
string name = "input.xlsb";
// nombre del archivo resultante
string resultantFile = "Converted.pdf";

// formato del archivo resultante
string format = "PDF";
        
try
{
    // cargar archivo XLSB desde la unidad local
    using (var file = System.IO.File.OpenRead(@"C:\Users\Downloads\" + name))
    {
        // Subir archivo de entrada al almacenamiento en la nube
        instance.UploadFile(name, file);
         
        // inicializar la operación de conversión
        var response = instance.CellsWorkbookGetWorkbook(name, format: format,outPath:resultantFile); 
        
        if (response != null && response.Equals("OK"))
        {
            // Mostrar mensaje de confirmación en la consola
            Console.WriteLine("XLSB Successfully converted to PDF !");
            Console.ReadKey();
        }
    }
}catch (Exception ex)
{
    Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}

Guardar la hoja de trabajo seleccionada en formato PDF

En esta sección, analizaremos la conversión de una hoja de trabajo específica de un libro XLSB al formato PDF.

  • El primer paso es crear una instancia de la clase CellsApi mientras se pasan los detalles de ClientID y ClientSecret como argumentos.
  • En segundo lugar, lea el archivo XLSB de entrada en el objeto de flujo usando File.OpenRead.
  • Ahora cargue el archivo XLSB al almacenamiento en la nube usando el método UploadFile(…) de la clase CellsApi.
  • Por último, llame al método CellsWorksheetsGetWorksheet(..) que toma el nombre del XLSB de entrada, el nombre de la hoja de trabajo a convertir y el nombre del archivo de salida resultante como argumentos.
// Para obtener ejemplos completos y archivos de datos, visite 
https://github.com/aspose-cells-cloud/aspose-cells-cloud-dotnet/

// Obtenga las credenciales del cliente desde https://dashboard.aspose.cloud/
string clientSecret = "d757548a9f2558c39c2feebdf85b4c44";
string clientID = "4db2f826-bf9c-42e7-8b2a-8cbca2d15553";
        
// Crea una instancia de CellsApi mientras pasas ClientID y ClientSecret
CellsApi instance = new CellsApi(clientID, clientSecret);

// nombre del archivo de entrada de Excel
string name = "input.xlsb";
// nombre del archivo resultante
string resultantFile = "Converted.pdf";

// formato del archivo resultante
string format = "PDF";

// nombre de la hoja de trabajo que se va a convertir
string sheetName = "Sheet2";
        
try
{
    // cargar archivo XLSB desde la unidad local
    using (var file = System.IO.File.OpenRead(@"C:\Users\Downloads\" + name))
    {
        // Subir archivo de entrada al almacenamiento en la nube
        instance.UploadFile(name, file);
         
        // inicializar la operación de conversión
        var response = instance.CellsWorksheetsGetWorksheet(name, sheetName, format); 
        
        if (response != null && response.Equals("OK"))
        {
            // Mostrar mensaje de confirmación en la consola
            Console.WriteLine("Worksheet successfully converted to PDF !");
            Console.ReadKey();
        }
        
        // Llamar a un método personalizado para guardar la instancia de Stream en un archivo
        saveToDisk(response, @"C:\Users\Downloads\" + resultantFile)
    }
}catch (Exception ex)
{
    Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}

// Método para guardar una instancia de flujo en un archivo
static void saveToDisk(Stream responseStream, String resultantFile)
{
    var fileStream = File.Create(resultantFile);
    responseStream.Seek(0, SeekOrigin.Begin);
    responseStream.CopyTo(fileStream);
    fileStream.Close();
}
Vista previa de Excel a PDF

Imagen 1: Vista previa de la conversión de Excel a PDF

Los archivos de muestra utilizados en el ejemplo anterior se pueden descargar de input.xlsb, completeWorkbook.pdf y Worksheet2.pdf.

Guardar Excel como PDF usando el comando cURL

Los comandos cURL también se encuentran entre las formas más sencillas de acceder a las API REST, por lo que vamos a seguir dos enfoques para convertir el archivo XLSB a PDF, es decir, convertir el archivo XLSB completo a formato PDF o convertir una hoja de cálculo específica a formato PDF. Por lo tanto, primero debemos generar credenciales de cliente basadas en token de acceso JWT especificadas en el panel de control de Aspose.Cloud. Para obtener más detalles, visite Cómo obtener un token JWT usando un ID de cliente y una clave secreta de cliente.

Conversión completa de Excel a PDF

Utilice el siguiente comando para convertir el archivo XLSB completo ya disponible en el almacenamiento en la nube en formato PDF y guardar el resultado en el almacenamiento en la nube.

curl -X GET "https://api.aspose.cloud/v3.0/cells/TestCase.xlsb?format=PDF&isAutoFit=true&onlySaveTable=false&outPath=Resultant.pdf" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"

En caso de que necesite guardar la salida en la unidad local, omita el valor del parámetro outPath y utilice el parámetro -o en el comando cURL.

curl -X GET "https://api.aspose.cloud/v3.0/cells/TestCase.xlsb?format=PDF&isAutoFit=true&onlySaveTable=false" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-o localSave.pdf

Convertir XLSB en Solicitud a PDF

En caso de que necesite convertir un archivo XLSB para cargarlo desde una unidad local y realizar la conversión, para ello, necesitamos utilizar la API PutConvertWorkBook. En este escenario, el XLSB no se cargará en el almacenamiento en la nube, pero si se proporciona el valor en el parámetro outPath, el archivo resultante se guardará en el almacenamiento en la nube.

curl -X PUT "https://api.aspose.cloud/v3.0/cells/convert?format=PDF&outPath=putConvert.pdf" \
-H  "accept: multipart/form-data" \
-H  "authorization: Bearer <JWT Token>" \
-H  "Content-Type: multipart/form-data" \
-d @TestCase.xlsb

En caso de que necesitemos cargar el XLSB desde la unidad local y realizar la conversión a PDF y también queramos guardar la salida en la unidad local, omita el valor del parámetro outPath y use el argumento -o en el comando cURL.

curl -X PUT "https://api.aspose.cloud/v3.0/cells/convert?format=PDF" \
-H  "accept: multipart/form-data" \
-H  "authorization: Bearer <JWT Token>" \
-H  "Content-Type: multipart/form-data" \
-d @TestCase.xlsb \
-o conveted.pdf

Guardar hojas de cálculo seleccionadas de Excel en formato PDF

En caso de que necesitemos convertir solo las hojas de trabajo seleccionadas al formato PDF, intente usar la API GetWorkSheetWithFormat. Al ejecutar el siguiente comando, Worksheet2 se convertirá solo a PDF.

curl -X GET "https://api.aspose.cloud/v3.0/cells/input.xlsb/worksheets/Sheet2?format=PDF&verticalResolution=0&horizontalResolution=0" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-o worksheet2.pdf

Conclusión

En este artículo, hemos explorado los pasos relacionados con la conversión de archivos XLSB a formato PDF. Tenga en cuenta que nuestros SDK son de código abierto y se desarrollan bajo una licencia MIT. El código fuente completo está disponible en GitHub. Mientras utiliza la API, si tiene algún problema o alguna otra consulta, no dude en ponerse en contacto con nosotros a través del foro de soporte al cliente gratuito.

Artículos relacionados

Te recomendamos visitar los siguientes enlaces para conocer más sobre: