Da parola a PDF

Come convertire Word in PDF online

I file MS Word, inclusi DOC, DOCX, DOCM, DOTX, ODT, OTT, ecc., sono alcuni dei formati di file più diffusi per l’archiviazione delle informazioni e la condivisione dei dati. Molte università, enti governativi o organizzazioni pubbliche producono i loro artefatti in formato Word, ma a causa di una tale varietà di formati, il layout del contenuto in questi file è compromesso quando visualizzato su diverse piattaforme. Pertanto, una soluzione praticabile è la conversione in un formato fisso che preservi la struttura e la fedeltà del documento su qualsiasi piattaforma.

In questo articolo parleremo della conversione del formato Word in PDF utilizzando la REST API .NET.

API di conversione da Word a PDF

Aspose.Words Cloud è una straordinaria API basata su REST che fornisce la facilità di creare, modificare e convertire documenti Word in altri formati di file supportati su qualsiasi piattaforma. In base all’ambito dell’articolo, utilizzeremo Aspose.Words Cloud SDK per .NET per la conversione da Word a PDF.

Installazione

Per installare l’SDK, eseguire il seguente comando sul terminale della riga di comando.

nuget install Aspose.Words-Cloud

Per installare l’SDK dal gestore pacchetti NuGet, seguire i passaggi specificati di seguito:

  • Espandere Esplora soluzioni e fare clic con il pulsante destro del mouse sulla cartella Pacchetti.
  • Inserisci Aspose.Words-Cloud nel campo di ricerca.
  • Ora abilita la casella di controllo vicino ad Aspose.Words-Cloud nei risultati della ricerca e clicca sul pulsante Aggiungi pacchetto.
  • L’SDK a cui si fa riferimento viene aggiunto al progetto.

Dobbiamo anche creare un account gratuito visitando Aspose.Cloud dashboard dove possiamo accedere utilizzando il nostro account GitHub o Google esistente oppure, possiamo creare un nuovo account. Basta scorrere verso il basso verso la sezione Credenziali client per vedere i dettagli ID client e Segreto client.

Come convertire Word in PDF in C#

Seguire i passaggi specificati di seguito per realizzare la conversione da Word a PDF utilizzando il codice C# .NET in Visual Studio. In questo scenario, il file Word di input è già disponibile nell’archiviazione Cloud e il PDF risultante è anch’esso archiviato nell’archiviazione Cloud.

  • Crea un’istanza della classe Configuration che accetta i dettagli dell’ID client e del segreto client come argomenti.
  • In secondo luogo, creare un’istanza della classe WordsApi e fornire un’istanza di configurazione come argomento.
  • In terzo luogo, carica il file dal sistema locale sullo storage Cloud utilizzando il metodo UploadFileRequest(..).
  • Il passo successivo è creare un oggetto di SaveOptionsData che definisce le proprietà del file risultante. Utilizzando questo oggetto, definiamo SaveFormat come Pdf, il valore per ZipOutput è specificato come false in modo che l’output non sia nell’archivio .zip e altre proprietà.
  • Ora crea un’istanza di SaveAsRequest che accetta il nome del file di input e gli oggetti SaveOptionsData come argomenti.
  • Infine, chiama il metodo SaveAs(…) della classe WordApi che accetta l’istanza SaveAsrequest come argomento.
// ottenere le credenziali del cliente da https://dashboard.aspose.cloud/
string clientSecret = "caac6e3d4a4724b2feb53f4e460eade3";
string clientID = "4ccf1790-accc-41e9-8d18-a78dbb2ed1aa";

// crea un'istanza di configurazione passando l'ID client e i dettagli segreti del client
var config = new Configuration { ClientId = clientID, ClientSecret = clientSecret };

// creare oggetto WordsApi
var wordsApi = new WordsApi(config);

// documento Word di input
string fileName = "test_multi_pages.doc";

// carica file dal sistema locale
using (var file = System.IO.File.OpenRead("/Users/nshahbaz/Downloads/" + fileName))
{
    // Carica il documento originale su Cloud Storage
    wordsApi.UploadFile(new UploadFileRequest(file, fileName, null));
}

// creare oggetto SaveOptionsData
SaveOptionsData saveOptionsData = new SaveOptionsData()
{
    SaveFormat = "pdf",
    FileName = "myResultant.pdf",
    AllowEmbeddingPostScriptFonts = true,
    ZipOutput = false,
    UpdateLastSavedTimeProperty = true,
    UpdateSdtContent = true,
    UpdateCreatedTimeProperty = true,
    UpdateLastPrintedProperty = true
};
            
try
{
    // crea SaveAsRequest passando il file Word di input e saveOptionsData
    SaveAsRequest request = new SaveAsRequest(fileName, saveOptionsData);
    
    // inizializzare l'operazione di conversione da Word a PDF
    var output = wordsApi.SaveAs(request);
}
catch (Exception ex)
{
    Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
} 
anteprima da word a pdf

Immagine 5: - Anteprima della conversione da Word a PDF.

Il file di esempio utilizzato nell’esempio precedente può essere scaricato da testmultipages.doc.

Convertire DOC in PDF in C#

In questo scenario, convertiremo il file DOC caricato dall’archivio locale e convertiremo l’output in formato PDF. Il file risultante viene anche archiviato nell’archivio Cloud.

  • Innanzitutto, crea un’istanza della classe Configuration che accetta come argomenti i dettagli relativi all’ID client e al segreto client.
  • In secondo luogo, crea un’istanza della classe WordsApi e fornisci un’istanza di configurazione come argomento.
  • In terzo luogo, crea un oggetto della classe ConvertDocumentRequest che accetta come argomenti il flusso di file locale, il formato di output e il nome del file risultante.
  • Infine, chiamare il metodo ConvertDocument(..) per eseguire l’operazione di conversione.
// ottenere le credenziali del cliente da https://dashboard.aspose.cloud/
string clientSecret = "caac6e3d4a4724b2feb53f4e460eade3";
string clientID = "4ccf1790-accc-41e9-8d18-a78dbb2ed1aa";

// crea un'istanza di configurazione passando l'ID client e i dettagli segreti del client
var config = new Configuration { ClientId = clientID, ClientSecret = clientSecret };

// creare oggetto WordsApi
var wordsApi = new WordsApi(config);

// file di testo di input
string fileName = "test_multi_pages.doc";

// nome del file risultante
string outputfile = "result.pdf";

try
{
    // carica il file word dall'archivio locale e specifica il formato di output
    ConvertDocumentRequest request = new ConvertDocumentRequest(System.IO.File.OpenRead("/Users/nshahbaz/Downloads/" + fileName),"pdf",outputfile);
    
    // eseguire l'operazione di conversione
    var output = wordsApi.ConvertDocument(request);
}
catch (Exception ex)
{
    Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}  

Da DOCX a PDF in C#

Discutiamo lo scenario per convertire un file DOCX disponibile nell’archiviazione Cloud e salvare anche il risultante PDF nell’archiviazione Cloud. In questo scenario, utilizzeremo il metodo di richiesta HTTP GET.

  • Per prima cosa, crea un’istanza della classe Configuration che accetta come argomenti i dettagli relativi all’ID client e al segreto client.
  • In secondo luogo, crea un’istanza della classe WordsApi e fornisci un’istanza di configurazione come argomento.
  • Il passo successivo consiste nel caricare il file dall’unità locale allo storage cloud utilizzando il metodo UploadFileRequest(…) di WordsApi.
  • Penultimo, crea un oggetto della classe GetDocumentWithFormatRequest che accetta come argomenti il nome del file DOCX, il formato di output e il nome del file risultante.
  • Infine, chiama il metodo GetDocumentWithFormat(…) per eseguire la conversione.
// ottenere le credenziali del cliente da https://dashboard.aspose.cloud/
string clientSecret = "caac6e3d4a4724b2feb53f4e460eade3";
string clientID = "4ccf1790-accc-41e9-8d18-a78dbb2ed1aa";

// crea un'istanza di configurazione passando l'ID client e i dettagli segreti del client
var config = new Configuration { ClientId = clientID, ClientSecret = clientSecret };

// creare oggetto WordsApi
var wordsApi = new WordsApi(config);

// file docx di input
string fileName = "file-sample_1MB.docx";

// formato di output come PDF
string format = "pdf";

// nome file risultante
string outputfile = "result.pdf";

// carica il contenuto del file DOCX dall'unità locale
using (var file = System.IO.File.OpenRead("/Users/nshahbaz/Downloads/" + fileName))
{
    // Carica il documento originale su Cloud Storage
    wordsApi.UploadFile(new UploadFileRequest(file, fileName, null));
}

// carica il file su Cloud Storage            
try
{
    GetDocumentWithFormatRequest request = new GetDocumentWithFormatRequest(fileName,format,null,null,null,null,outputfile);
    wordsApi.GetDocumentWithFormat(request);
}
catch (Exception ex)
{
    Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
} 

Si può prendere in considerazione di scaricare i file di risorse utilizzati nell’esempio precedente da file-sample1MB.docx e result.pdf.

anteprima conversione docx in pdf

Immagine 6: - Anteprima della conversione da DOCX a PDF.

Da Word a PDF tramite comando cURL

In questa sezione, accederemo alla Cloud API tramite comandi cURL. Quindi il primo passo è generare un token di accesso JWT basato sui dettagli di Client ID e Client Secret.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=4ccf1790-accc-41e9-8d18-a78dbb2ed1aa&client_secret=caac6e3d4a4724b2feb53f4e460eade3" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

Ora esegui il seguente comando per caricare il file sullo storage cloud.

curl -X PUT "https://api.aspose.cloud/v4.0/words/storage/file/file-sample_1MB.docx" \
-H  "accept: application/json" \
-H  "Authorization: Bearer <JWT Token>" \
-H  "Content-Type: multipart/form-data" \
-d {"fileContent":{}}

Infine, utilizzare l’API GetDocumentWithFormat per eseguire la conversione da DOCX a PDF.

curl -X GET "https://api.aspose.cloud/v4.0/words/file-sample_1MB.docx?format=pdf&outPath=myOutput.pdf" \
-H  "accept: application/octet-stream" \
-H  "Authorization: Bearer <JWT Token>

Conclusione

Abbiamo discusso alcune fantastiche funzionalità di conversione del formato Word in PDF tramite Aspose.Words Cloud. La conversione può essere eseguita tramite il codice .NET o tramite il comando cURL. Inoltre, puoi anche esplorare l’API tramite Swagger UI nel tuo browser.

Si prega di notare che il codice sorgente completo dell’SDK è disponibile per il download su GitHub e in caso di problemi durante l’utilizzo dell’API, non esitate a contattarci tramite il Forum di supporto prodotto gratuito.

Articoli correlati

Consigliamo vivamente di visitare i seguenti link per saperne di più: