Panoramica

Unire documenti Word è una necessità comune in molte applicazioni, sia per combinare report, consolidare informazioni o semplicemente semplificare la gestione dei documenti. In questo articolo, esploreremo come unire file DOCX utilizzando Python con la libreria GroupDocs.Merger. Questa potente libreria consente agli sviluppatori di manipolare facilmente i documenti Word in modo programmatico, garantendo alta prestazione e precisione.

Questa guida coprirà:

Come unire più file DOCX

Unire più file DOCX è semplice con la libreria GroupDocs.Merger. Di seguito, illustriamo i passaggi chiave coinvolti in questo processo:

  1. Importa il pacchetto GroupDocs.Merger: Inizia importando la libreria necessaria.
  2. Crea un’istanza del Merger: Istituisci la classe Merger utilizzando il percorso del primo file DOCX.
  3. Unisci documenti aggiuntivi: Utilizza il metodo join per aggiungere altri file DOCX che desideri unire.
  4. Salva il documento unito: Infine, chiama il metodo save per scrivere il documento unito in un percorso di output specificato.

Ecco un frammento di codice Python che dimostra questi passaggi:

import groupdocs.merger as gm
import constants

def run():
    print(f"----------------------------------------------------------------------------")
    print(f"[Esempio Uso di Base] # MultipleDocumentOperations # Merge : Docx")

    # Passo 1: Crea un oggetto Merger con il primo documento
    with gm.Merger(constants.sample_docx) as merger:
        print(f"Informazioni sul documento recuperate con successo")
        
        # Passo 2: Unisci un altro file DOCX da unire
        merger.join(constants.sample_docx)
        
        # Passo 3: Salva il documento unito
        merger.save(constants.output_docx)
        print(f"Unito a: {constants.output_docx}")
    
    print(f"----------------------------------------------------------------------------")

Unire documenti DOCX senza interruzioni di sezione

A volte, unire documenti richiede che i contenuti siano uniti senza inserire interruzioni di sezione. Questo può aiutare a mantenere il flusso delle informazioni attraverso i documenti uniti.

  1. Crea un’istanza del Merger: Proprio come prima, inizializza la classe Merger.
  2. Imposta le opzioni di unione: Definisci WordJoinOptions e imposta il mode su DISABLE_SECTION_BREAKS.
  3. Unisci documenti: Aggiungi il documento aggiuntivo da unire.
  4. Salva il risultato: Scrivi il risultato finale in un nuovo file DOCX.

Ecco come puoi farlo:

import groupdocs.merger as gm
import constants

def run():
    print(f"----------------------------------------------------------------------------")
    print(f"[Esempio Uso di Base] # MultipleDocumentOperations # Merge # Word : UnireDocumentiWordSenzaInterruzioniDiSezione")

    # Passo 1: Crea un oggetto Merger con il documento sorgente
    with gm.Merger(constants.sample_doc) as merger:
        print(f"Informazioni sul documento recuperate con successo")
        
        # Passo 2: Definisci le opzioni di unione Word per disabilitare le interruzioni di sezione
        word_join_options = gm.domain.options.WordJoinOptions()
        word_join_options.mode = gm.domain.options.WordJoinMode.DISABLE_SECTION_BREAKS
        
        # Passo 3: Unisci il documento senza interruzioni di sezione
        merger.join(constants.sample_doc, word_join_options)
        
        # Passo 4: Salva il documento unito
        merger.save(constants.output_doc_without_section_breaks)
        print(f"Unito a: {constants.output_doc_without_section_breaks}")
    
    print(f"----------------------------------------------------------------------------")

Unire documenti DOCX con modalità di conformità predefinite

Per casi d’uso specifici, i documenti potrebbero dover rispettare determinati standard. GroupDocs.Merger consente di unire documenti con modalità di conformità predefinite per garantire, ad esempio, che l’output rispetti gli standard ISO.

  1. Crea un’istanza del Merger: Inizializza la classe Merger con il tuo documento di base.
  2. Imposta la modalità di conformità: Crea un oggetto WordJoinOptions e imposta la proprietà compliance.
  3. Unisci documenti: Aggiungi il documento aggiuntivo utilizzando il metodo join.
  4. Salva il documento finale: Salvalo nella posizione di output desiderata.

Ecco il codice per questa operazione:

import groupdocs.merger as gm
import constants

def run():
    print(f"----------------------------------------------------------------------------")
    print(f"[Esempio Uso di Base] # MultipleDocumentOperations # Merge # Word : UnireDocumentiWordConModalitàDiConformitàPredefinita")

    # Passo 1: Crea un oggetto Merger con il documento
    with gm.Merger(constants.sample_docx) as merger:
        print(f"Informazioni sul documento recuperate con successo")
        
        # Passo 2: Definisci le opzioni di unione Word con modalità di conformità predefinita
        word_join_options = gm.domain.options.WordJoinOptions()
        word_join_options.compliance = gm.domain.options.WordJoinCompliance.ISO_29500_2008_STRICT
        
        # Passo 3: Unisci un altro documento con modalità di conformità
        merger.join(constants.sample_docx, word_join_options)
        
        # Passo 4: Salva il documento unito
        merger.save(constants.output_docx_with_predefined_compliance_mode)
        print(f"Unito a: {constants.output_docx_with_predefined_compliance_mode}")
    
    print(f"----------------------------------------------------------------------------")

Come unire DOCX da flussi

Puoi anche unire file DOCX da flussi in memoria, il che può essere utile quando stai trattando documenti generati dinamicamente.

  1. Ottieni un flusso di file: Apri il tuo documento in modalità binaria per ottenere il flusso.
  2. Crea l’istanza del Merger: Istituisci la classe Merger utilizzando il flusso.
  3. Esegui l’operazione di unione: Unisci come richiesto e salva l’output.

Ecco come implementeresti questo:

from turtle import update
import groupdocs.merger as gm
import constants

def run():
    print(f"----------------------------------------------------------------------------")
    print(f"[Esempio Uso Avanzato] # Caricamento # CaricaDocumentoDaFlusso")

    # Passo 1: Ottieni il flusso del documento
    stream = get_file_stream()
    
    # Passo 2: Crea un'istanza del Merger utilizzando il flusso
    with gm.Merger(stream) as merger:
        print(f"Documento caricato dal flusso con successo")
    
    print(f"----------------------------------------------------------------------------")

def get_file_stream():
    file_path = constants.sample_docx
    return open(file_path, "rb")

Vedi anche

Per ulteriori dettagli, puoi esplorare le seguenti risorse:

Puoi anche scaricare una prova gratuita da releases.groupdocs.com e acquisire una licenza temporanea per provare la libreria senza restrizioni su Acquista Licenza Temporanea.

Esempi di codice

Ecco alcuni esempi aggiuntivi per aiutarti a comprendere il processo di unione con la libreria GroupDocs.Merger per Python:

Unire Documenti Word Senza Partire Da Una Nuova Pagina

Questo esempio dimostra come unire documenti in modo che l’ultima pagina del primo documento sia direttamente seguita dalla prima pagina del documento successivo, senza inserire alcuna nuova pagina intermedia.

import groupdocs.merger as gm
import constants

def run():
    print(f"----------------------------------------------------------------------------")
    print(f"[Esempio Uso di Base] # MultipleDocumentOperations # Merge # Word : UnireDocumentiWordSenzaPartireDaUnaNuovaPagina")

    # Passo 1: Crea un oggetto Merger con il documento
    with gm.Merger(constants.sample_doc) as merger:
        print(f"Informazioni sul documento recuperate con successo")
        
        # Passo 2: Definisci le opzioni di unione Word per la modalità continua
        word_join_options = gm.domain.options.WordJoinOptions()
        word_join_options.mode = gm.domain.options.WordJoinMode.CONTINUOUS
        
        # Passo 3: Unisci documenti senza inserire una nuova pagina
        merger.join(constants.sample_doc, word_join_options)
        
        # Passo 4: Salva il documento unito
        merger.save(constants.output_doc_without_starting_from_new_page)
        print(f"Unito a: {constants.output_doc_without_starting_from_new_page}")
    
    print(f"----------------------------------------------------------------------------")

Unire più documenti con opzioni di unione personalizzate

Ecco come unire documenti DOCX impostando opzioni di unione specifiche, come la conformità a uno standard ISO specifico.

import groupdocs.merger as gm
import constants

def run():
    print(f"----------------------------------------------------------------------------")
    print(f"[Esempio Uso Avanzato] # Unire con Opzioni di Unione Personalizzate")

    # Passo 1: Crea un oggetto Merger con il documento di base
    with gm.Merger(constants.sample_docx) as merger:
        print(f"Informazioni sul documento recuperate con successo")
        
        # Passo 2: Imposta opzioni di unione personalizzate per modalità di conformità predefinita
        word_join_options = gm.domain.options.WordJoinOptions()
        word_join_options.compliance = gm.domain.options.WordJoinCompliance.ISO_29500_2008_STRICT
        
        # Passo 3: Unisci un altro documento con impostazioni di conformità
        merger.join(constants.sample_docx, word_join_options)
        
        # Passo 4: Salva il documento unito
        merger.save(constants.output_docx_with_predefined_compliance_mode)
        print(f"Unito a: {constants.output_docx_with_predefined_compliance_mode}")
    
    print(f"----------------------------------------------------------------------------")

Vedi anche

Per esplorare di più su GroupDocs.Merger e le sue funzionalità, puoi controllare le seguenti risorse:

Prova gratuita e Licenza Temporanea

Puoi scaricare una prova gratuita di GroupDocs.Merger dalla nostra pagina delle release. Inoltre, puoi acquisire una licenza temporanea per scopi di valutazione su Acquista Licenza Temporanea. Questa licenza temporanea ti consente di provare la libreria senza alcuna limitazione e valutare pienamente le sue capacità.