Converti documenti Word in PDF utilizzando l'API REST in Python.

È una pratica comune condividere documenti Word in formato PDF perché il PDF è un formato di condivisione di documenti ampiamente utilizzato nel settore. Puoi convertire facilmente Word in PDF utilizzando la funzionalità integrata fornita da Microsoft Office, ma potresti dover convertire i tuoi documenti Word (DOC o DOCX) in PDF a livello di programmazione. In questo articolo imparerai come convertire documenti Word in PDF utilizzando un’API REST in Python.

In questo articolo saranno trattati i seguenti argomenti:

Conversione da Word a PDF REST API e Python SDK

Per convertire DOCX in PDF, utilizzeremo l’API Python SDK of GroupDocs.Conversion Cloud. È una soluzione di conversione di documenti/immagini indipendente dalla piattaforma e non dipende da alcuno strumento o software. Ti consente di convertire in modo rapido e affidabile immagini e documenti di qualsiasi formato di file supportato in qualsiasi formato di cui hai bisogno.

Puoi installare GroupDocs.Conversion Cloud nella tua applicazione Python utilizzando il seguente comando nella console:

pip install groupdocs_conversion_cloud

Si prega di ottenere l’ID cliente e il segreto dalla dashboard prima di seguire i passaggi menzionati. Una volta che hai il tuo ID e segreto, aggiungi il codice come mostrato di seguito:

client_id = "659fe7da-715b-4744-a0f7-cf469a392b73"
client_secret = "b377c36cfa28fa69960ebac6b6e36421"

configuration = groupdocs_conversion_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
my_storage = ""

Converti documenti Word in PDF utilizzando un’API REST in Python

Puoi convertire i tuoi documenti Word in PDF in modo programmatico sul cloud seguendo i semplici passaggi indicati di seguito:

  1. Carica il file DOCX nel cloud
  2. Converti DOCX in PDF utilizzando Python
  3. Scarica il file PDF convertito

Carica il file DOCX

Innanzitutto, carica il file DOCX nel cloud utilizzando il seguente esempio di codice:

# Crea un'istanza dell'API
file_api = groupdocs_conversion_cloud.FileApi.from_config(configuration)

# richiesta di caricamento del file
request = groupdocs_conversion_cloud.UploadFileRequest("sample.docx", "C:\\Files\\Conversion\\sample.docx", my_storage)

# caricare file di esempio
response = file_api.upload_file(request)

Di conseguenza, il file DOCX caricato sarà disponibile nella sezione file della dashboard sul cloud.

Converti DOCX in PDF usando Python

Puoi facilmente convertire DOCX in documento PDF a livello di programmazione seguendo i passaggi indicati di seguito:

  • Innanzitutto, crea un’istanza di ConvertApi.
  • Ora, crea un’istanza di ConvertSettings.
  • Quindi, fornire il percorso del file DOCX di input.
  • Imposta il formato come “pdf”.
  • Fornire il percorso del file di output.
  • Ora crea ConvertDocumentRequest con ConvertSettings.
  • Infine, converti DOCX chiamando il metodo convert\document() con ConvertDocumentRequest.

L’esempio di codice seguente mostra come convertire DOCX in PDF usando un’API REST in Python.

# Crea un'istanza dell'API
convert_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)

# Definire le impostazioni di conversione
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.docx"
settings.format = "pdf"
settings.output_path = "converted"

# Crea una richiesta di conversione del documento
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)

# Converti documento
result = convert_api.convert_document(request)

# Fatto
print("Document converted: " + result[0].path)
Converti documenti Word in PDF utilizzando un'API REST in Python

Converti documenti Word in PDF utilizzando un’API REST in Python.

Scarica il file convertito

L’esempio di codice precedente salverà il file PDF convertito sul cloud. Puoi scaricarlo utilizzando il seguente esempio di codice:

# Inizializzazione dell'API
file_api = groupdocs_conversion_cloud.FileApi.from_config(configuration)

# Crea richiesta di download del file
request = groupdocs_conversion_cloud.DownloadFileRequest("converted\\sample.pdf", my_storage)

# Download file
response = file_api.download_file(request)

# Sposta il file scaricato nella tua directory di lavoro
shutil.move(response, "C:\\Files\\Conversion\\")

Conversione da Word a PDF con opzioni avanzate

Puoi convertire documenti Word in file PDF con alcune impostazioni avanzate seguendo i passaggi indicati di seguito:

  • Innanzitutto, crea un’istanza di ConvertApi.
  • Ora, crea un’istanza di ConvertSettings.
  • Quindi, fornire il percorso del file DOCX.
  • Impostare il “pdf” come formato.
  • Fornire il percorso del file di output.
  • Ora, crea un’istanza di DocxLoadOptions
  • Facoltativamente, imposta varie opzioni di caricamento come nascondi\commenti, nascondi\parola\tracciati\modifiche, ecc.
  • Ora, crea un’istanza di PdfConvertOptions
  • Quindi, imposta varie opzioni di conversione come display\doc\title, margini (superiore, sinistro, destro, inferiore), ecc.
  • Ora crea ConvertDocumentRequest con ConvertSettings
  • Infine, converti DOCX chiamando il metodo convert\document() con ConvertDocumentRequest

L’esempio di codice seguente mostra come convertire un documento Word in un documento PDF con opzioni di conversione avanzate. Si prega di seguire i passaggi menzionati in precedenza per caricare e scaricare un file.

# Crea un'istanza dell'API
convert_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)

# Definire le impostazioni di conversione
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.docx"
settings.format = "pdf"
settings.output_path = "converted"

# Opzioni di caricamento DOCX
loadOptions = groupdocs_conversion_cloud.DocxLoadOptions()
loadOptions.hide_comments = True              # Hide comments
loadOptions.hide_word_tracked_changes = True  # Hide tracked changes

# Opzioni di conversione PDF
convertOptions = groupdocs_conversion_cloud.PdfConvertOptions()
convertOptions.center_window = True
convertOptions.compress_images = False
convertOptions.display_doc_title = True
convertOptions.dpi = 1024.0
convertOptions.fit_window = False
convertOptions.from_page = 1
convertOptions.grayscale = False
convertOptions.image_quality = 100
convertOptions.linearize = False
convertOptions.margin_top = 5
convertOptions.margin_left = 5
convertOptions.unembed_fonts = True
convertOptions.remove_unused_streams = True
convertOptions.remove_unused_objects = True
convertOptions.remove_pdfa_compliance = False

settings.convert_options = convertOptions

# Converti richiesta documento
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)

# Converti documento
result = convert_api.convert_document(request)

# Fatto
print("Document converted: " + result[0].path)

Converti intervallo di pagine da DOCX a PDF in Python

È possibile convertire un intervallo di pagine da un documento Word in un file PDF in modo programmatico seguendo i passaggi indicati di seguito:

  • Innanzitutto, crea un’istanza di ConvertApi
  • Ora, crea un’istanza di ConvertSettings
  • Quindi, fornire il percorso del file DOCX di input
  • Assegna “pdf” al formato
  • Fornire il percorso del file di output
  • Ora, crea un’istanza di PdfConvertOptions
  • Quindi, fornisci un intervallo di pagine da convertire dal numero di pagina iniziale e dalle pagine totali da convertire
  • Ora assegna PdfConvertOptions a ConvertSettings
  • Quindi, crea ConvertDocumentRequest con ConvertSettings
  • Infine, converti chiamando il metodo convert\document() con ConvertDocumentRequest

L’esempio di codice seguente mostra come convertire un intervallo di pagine da un DOCX a PDF usando un’API REST in Python. Si prega di seguire i passaggi menzionati in precedenza per caricare e scaricare un file.

# Crea un'istanza dell'API
convert_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)

# Definire le impostazioni di conversione
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.docx"
settings.format = "pdf"
settings.output_path = "converted"

# Opzioni di conversione PDF
convertOptions = groupdocs_conversion_cloud.PdfConvertOptions()
convertOptions.from_page = 1;    # start page number
convertOptions.pages_count = 2;  # total pages to convert

settings.convert_options = convertOptions

# Converti richiesta documento
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)

# Converti documento
result = convert_api.convert_document(request)

# Fatto
print("Document converted: " + result[0].path)

Converti pagine specifiche di DOCX in PDF in Python

È possibile convertire pagine specifiche di un documento Word in un file PDF a livello di programmazione seguendo i passaggi indicati di seguito:

  • Innanzitutto, crea un’istanza di ConvertApi
  • Ora, crea un’istanza di ConvertSettings
  • Quindi, fornire il percorso del file DOCX di input
  • Assegna “pdf” al formato
  • Fornire il percorso del file di output
  • Ora, crea un’istanza di PdfConvertOptions
  • Quindi, fornisci numeri di pagina specifici in un array separato da virgole da convertire
  • Ora assegna PdfConvertOptions a ConvertSettings
  • Quindi, crea ConvertDocumentRequest con ConvertSettings
  • Infine, converti chiamando il metodo convert\cocument() con ConvertDocumentRequest

L’esempio di codice seguente mostra come convertire pagine specifiche di un documento Word in PDF usando un’API REST in Python. Si prega di seguire i passaggi menzionati in precedenza per caricare e scaricare un file.

# Crea un'istanza dell'API
convert_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)

# Definire le impostazioni di conversione
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.docx"
settings.format = "pdf"
settings.output_path = "converted"

# Opzioni di conversione PDF
convertOptions = groupdocs_conversion_cloud.PdfConvertOptions()
convertOptions.pages = [1,2];  # page numbers to convert

settings.convert_options = convertOptions

# Converti richiesta documento
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)

# Converti documento
result = convert_api.convert_document(request)

# Fatto
print("Document converted: " + result[0].path)

Conversione da Word a PDF con filigrana utilizzando Python

È possibile convertire documenti Word in documenti PDF e aggiungere filigrane ai documenti convertiti in modo programmatico seguendo i passaggi indicati di seguito:

  • Innanzitutto, crea un’istanza di ConvertApi
  • Ora, crea un’istanza di ConvertSettings
  • Quindi, fornire il percorso del file DOCX di input
  • Assegna “pdf” al formato
  • Fornire il percorso del file di output
  • Ora, crea un’istanza di WatermarkOptions
  • Quindi, imposta Testo filigrana, Colore, Larghezza, Altezza, Sinistra, Alto, ecc.
  • Ora, definisci PdfConvertOptions e assegna WatermarkOptions
  • Ora crea ConvertDocumentRequest con ConvertSettings
  • Infine, converti DOCX chiamando il metodo convert\document() con ConvertDocumentRequest

L’esempio di codice seguente mostra come convertire un documento Word in un documento PDF e aggiungere una filigrana al documento PDF convertito utilizzando un’API REST in Python. Si prega di seguire i passaggi menzionati in precedenza per caricare e scaricare i file.

# Inizializzazione dell'API
convert_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)

# Definire le impostazioni di conversione
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.docx"
settings.format = "pdf"
settings.output_path = "converted"

# Definire le opzioni della filigrana
watermark = groupdocs_conversion_cloud.WatermarkOptions()
watermark.text = "THIS IS SAMPLE WATERMARK"
watermark.bold = True;
watermark.font_size = 34;
watermark.color = "Gray";
watermark.background = False;
watermark.rotation_angle = 30;
watermark.left = 90;
watermark.top = 500;

# Definisci le opzioni di conversione PDF
convertOptions = groupdocs_conversion_cloud.PdfConvertOptions()
convertOptions.watermark_options = watermark

settings.convert_options = convertOptions

# Crea una richiesta di conversione del documento
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)

# Converti documento
result = convert_api.convert_document(request)
print("Document converted successfully: " + result[0].url)
Conversione da Word a PDF con filigrana utilizzando Python.

Conversione da Word a PDF con filigrana utilizzando Python.

Conversione da DOCX a PDF senza utilizzare Cloud Storage

Puoi convertire un documento Word in PDF senza utilizzare l’archivio cloud passandolo nel corpo della richiesta e ricevendo il file di output nella risposta API. Si prega di seguire i passaggi indicati di seguito per convertire un DOCX in un PDF senza utilizzare il cloud storage.

  • Innanzitutto, crea un’istanza di ConvertApi
  • Legge il file DOCX di input dal percorso locale
  • Ora crea ConvertDocumentDirectRequest
  • Quindi, fornire il formato di destinazione come “pdf” e il percorso del file di input come parametri di input
  • Ottieni risultati chiamando il metodo convert\document\direct() con ConvertDocumentDirectRequest
  • Infine, salva il file di output nel percorso locale utilizzando il metodo FileStream.writeFile()

L’esempio di codice seguente mostra come convertire un documento Word in un PDF senza utilizzare l’archiviazione cloud.

# Crea un'istanza dell'API
convert_api = groupdocs_conversion_cloud.ConvertireApi.from_keys(client_id, client_secret)

# Crea richiesta di conversione
request = groupdocs_conversion_cloud.ConvertireDocumentDirectRequest("pdf", "C:\\Files\\Conversion\\sample.docx")

# Convertire
result = convert_api.convert_document_direct(request)

# Sposta il file scaricato nella tua directory di lavoro
shutil.move(result, "C:\\Files\\Conversion\\")

Converti DOCX in PDF e scarica direttamente

Puoi convertire DOCX in documenti PDF a livello di codice e scaricare direttamente il file convertito seguendo i passaggi indicati di seguito:

  • Innanzitutto, crea un’istanza di ConvertApi
  • Ora, crea un’istanza di ConvertSettings
  • Quindi, imposta il percorso del file DOCX
  • Assegna “pdf” al formato
  • Impostare “Nessuno” sul percorso di output
  • Ora crea ConvertDocumentRequest con ConvertSettings
  • Quindi, ottieni i risultati chiamando il metodo convert\document\download().
  • Facoltativamente, salva il file di output nel percorso locale utilizzando il metodo shutil.move()

L’esempio di codice seguente mostra come convertire un file DOCX in un documento PDF e scaricarlo direttamente usando un’API REST in Python. L’API restituirà il file PDF convertito in risposta. Si prega di seguire i passaggi menzionati in precedenza per caricare un file.

# Crea le istanze API necessarie
convert_api = groupdocs_conversion_cloud.ConvertireApi.from_keys(client_id, client_secret)

# Definire le impostazioni di conversione
settings = groupdocs_conversion_cloud.ConvertireSettings()
settings.file_path = "sample.docx"
settings.format = "pdf"

settings.output_path = None    # leave OutputPath will result the output as document IOStream

# Crea richiesta di conversione
request = groupdocs_conversion_cloud.ConvertireDocumentRequest(settings)

# Convertire
response = convert_api.convert_document_download(request)

# Sposta il file scaricato nella tua directory di lavoro
shutil.move(response, "C:\\Files\\Conversion\\")

Prova in linea

Prova il seguente strumento di conversione da DOCX a PDF online gratuito, sviluppato utilizzando l’API di cui sopra. https://products.groupdocs.app/conversion/docx-to-pdf

Conclusione

In questo articolo, hai imparato come convertire documenti Word in file PDF sul cloud. Hai anche visto come convertire pagine specifiche o un intervallo di pagine da un DOCX a un PDF usando Python. Questo articolo spiega anche come caricare a livello di codice il file DOCX nel cloud e quindi scaricare il file PDF convertito dal cloud. Inoltre, puoi saperne di più su GroupDocs.Conversion Cloud API utilizzando la documentazione. Forniamo anche una sezione Riferimento API che ti consente di visualizzare e interagire con le nostre API direttamente attraverso il browser. In caso di ambiguità, non esitate a contattarci sul forum.

Guarda anche