Da Excel a PDF

Convertire Excel in PDF utilizzando Node.js

Excel è uno dei formati di file più diffusi per l’archiviazione dei dati di calcolo. È in grado di archiviare dati come numeri e formule, testo e forme di disegno. Inoltre, Excel fa parte della suite di software Microsoft Office, quindi molti utenti lo usano per produrre i file XLS. Inoltre, grazie alle sue capacità di archiviare dati in una griglia di celle disposte in righe numerate e colonne denominate in lettere per organizzare manipolazioni di dati come operazioni aritmetiche, è diventato molto popolare. Ma per visualizzare questi file, è necessario avere installata un’applicazione specifica. Inoltre, varie versioni del software visualizzano i file in formati diversi. Pertanto, per risolvere tutti questi problemi, la conversione del file in formato PDF è una soluzione praticabile perché la maggior parte dei browser Web sui desktop e varie applicazioni gratuite sui dispositivi mobili visualizzano comodamente i documenti PDF.

In questo articolo parleremo della conversione di Excel in PDF tramite Cloud REST API.

API di conversione da Excel a PDF

Aspose.Cells Cloud è la nostra pluripremiata API REST che offre le capacità di creare file Excel da zero, modificare il contenuto nei file esistenti e rendere il file in formati quali XLSM, HTML, XPS, TIFF, SVG e molto altro. Quindi, secondo lo scopo di questo articolo, utilizzeremo Aspose.Cells Cloud SDK per Node.js.

Convertire Excel in PDF utilizzando i comandi cURL

In questa sezione, utilizzeremo i comandi cURL per salvare Excel in formato PDF. Quindi il primo passo è creare un abbonamento account gratuito su Aspose.Cloud dashboard. Se hai un account GitHub o Google, registrati semplicemente. Altrimenti, clicca sul pulsante Crea un nuovo account e fornisci le informazioni richieste. Accedi alla dashboard per accedere alle tue credenziali cliente.

Ora esegui il seguente comando per generare il token di accesso JWT.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=718e4235-8866-4ebe-bff4-f5a14a4b6466&client_secret=388e864b819d8b067a8b1cb625a2ea8e" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

Una volta ottenuto il token JWT, dobbiamo eseguire il seguente comando cURL per caricare un file dal sistema locale al cloud storage e quindi eseguire la conversione in formato PDF.

curl -X PUT "https://api.aspose.cloud/v3.0/cells/storage/file/conditional.xls" \
-H  "accept: application/json" 
-H  "authorization: Bearer <JWT Token>" \
-H  "Content-Type: multipart/form-data" \
-d {"File":{}}
https://api.aspose.cloud/v3.0/cells/storage/file/conditional.xlsx

Nel caso in cui sia necessario convertire un file XLS già disponibile nell’archivio Cloud in formato PDF, provare a utilizzare il seguente comando cURL:

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

Convertire XLS in PDF in Node.js

In questa sezione, discuteremo i passaggi e i dettagli su come eseguire la conversione del foglio di lavoro Excel in formato PDF utilizzando Node.js SDK. Il primo passaggio è installare l’SDK sul sistema locale, disponibile per il download su NPM e GitHub. Quindi eseguiremo il seguente comando per installare l’SDK da NPM

npm i asposecellscloud

Dopo l’installazione, possiamo eseguire il seguente frammento di codice per eseguire la conversione da XLS a PDF utilizzando Node.js

  • Crea oggetti che definiscono i dettagli dell’ID client e del segreto client.
  • Quindi creare un oggetto della classe CellsApi che accetta come argomenti i dettagli dell’ID client e del segreto client.
  • Il passo successivo consiste nel leggere il contenuto del file XLS di input disponibile sul sistema locale utilizzando il metodo createReadStream(…) del modulo File System.
  • Ora crea un’istanza della classe UploadFileRequest e poi passa i dati di input Stream alla proprietà file.
  • Per caricare il file sul cloud, chiamare il metodo uploadFile(…) di CellsApi.
  • Il passo successivo consiste nel creare un oggetto della classe CellsSaveAsPostDocumentSaveAsRequest(…).
  • Inoltre, crea un’istanza della classe PdfSaveOptions e passa il valore di PDF alla proprietà saveFormat.
  • Infine, chiama il metodo cellsSaveAsPostDocumentSaveAs(..) della classe CellsApi per avviare il processo di conversione.
const { CellsApi, CellsSaveAs_PostDocumentSaveAsRequest,UploadFileRequest,PdfSaveOptions } = require("asposecellscloud");

// Ottieni il tuo ClientId e ClientSecret da https://dashboard.aspose.cloud (è richiesta la registrazione gratuita).
const clientId = "718e4235-8866-4ebe-bff4-f5a14a4b6466";
const clientSecret = "388e864b819d8b067a8b1cb625a2ea8e";

// creare un'istanza di CellsApi
const cellsApi = new CellsApi(clientId, clientSecret);

// nome del documento Excel di input
filename = "conditional.xlsx"

// includi il riferimento al modulo File System nel tuo codice
const fs = require("fs");

// leggere il contenuto del file Excel di input
var data =fs.createReadStream("/Users/nayyershahbaz/Downloads/"+ filename);

// creare istanza di richiesta FileUpload
var req = new UploadFileRequest();
req.path = filename;
// imposta il contenuto come istanza Stream contenente il file Excel caricato
req.file = data;

// Carica il file sullo storage cloud
return cellsApi.uploadFile(req)
    .then((result) => {
        // Crea istanza di Document SaveAsRequest
        var req = new CellsSaveAs_PostDocumentSaveAsRequest();
        req.name = filename;

        // Crea un oggetto della classe PdfSaveOptions
        req.saveOptions = new PdfSaveOptions();
  
        // imposta il formato del file risultante come PDF
        req.saveOptions.saveFormat = "pdf";
        
        // imposta il nome per il nuovo file risultante
        req.newfilename = "newbook.pdf";
        // poiché salveremo nella posizione predefinita, imposteremo null come valore della cartella        
        req.folder = null;
    
        // Chiamare il metodo SaveAsPostDocument per avviare il processo di conversione     
        return cellsApi.cellsSaveAsPostDocumentSaveAs(req)
            .then((result) => {
            expect(result.body.code).to.equal(200);
            expect(result.response.statusCode).to.equal(200);
        });
    });

Conclusione

In questo articolo, abbiamo discusso i dettagli riguardanti la conversione di Excel in formato PDF in modo semplice e conveniente. Si prega di notare che Aspose.Cells Cloud SDK per Node.js è sviluppato secondo i principi open source, quindi il codice sorgente completo è disponibile per il download su GitHub. In caso di problemi durante l’utilizzo dell’API o se si hanno domande correlate, non esitate a chiedere tramite il Forum di supporto prodotto gratuito.

Articoli correlati

Potresti prendere in considerazione la possibilità di visitare i seguenti link per saperne di più su