Inserisci campi

Esistono diversi modi per inserire campi in un documento:

In questo articolo, esamineremo ogni modo in modo più dettagliato e analizzeremo come inserire determinati campi utilizzando queste opzioni.

Inserimento di campi in un documento utilizzando DocumentBuilder

In Aspose.Words il metodo InsertField viene utilizzato per inserire nuovi campi in un documento. Il primo parametro accetta il codice di campo completo del campo da inserire. Il secondo parametro è facoltativo e consente di impostare manualmente il risultato del campo. Se questo non viene fornito, il campo viene aggiornato automaticamente. È possibile passare null o empty a questo parametro per inserire un campo con un valore di campo vuoto. Se non si è sicuri della particolare sintassi del codice di campo, creare prima il campo in Microsoft Word e passare a vedere il relativo codice di campo.

Nell’esempio di codice seguente viene illustrato come inserire un campo di unione in un documento utilizzando DocumentBuilder:

La stessa tecnica viene utilizzata per inserire campi annidati all’interno di altri campi.

Nell’esempio di codice seguente viene illustrato come inserire campi annidati all’interno di un altro campo utilizzando DocumentBuilder:

Specificare Locale a livello di campo

Un identificatore di lingua è un’abbreviazione numerica internazionale standard per la lingua in un paese o regione geografica. Con Aspose.Words, è possibile specificare le impostazioni locali a livello di campo utilizzando la proprietà LocaleId, che ottiene o imposta le impostazioni locali del campo ID.

Il seguente esempio di codice mostra come utilizzare questa opzione:

Inserisci campo non tipizzato / vuoto

Se si desidera inserire campi non tipizzati / vuoti ({}) proprio come Microsoft Word consente, è possibile utilizzare il metodo InsertField con il parametro FieldType.FieldNone. Per inserire un campo in un documento di Word, è possibile premere la combinazione di tasti “Ctrl + F9”.

Il seguente esempio di codice mostra come inserire un campo vuoto nel documento:

Inserisci COMPARE Campo

Il campo COMPARE confronta due valori e restituisce il valore numerico 1 se il confronto è vero o 0 se il confronto è falso.

L’esempio di codice seguente mostra come aggiungere campi COMPARE usando DocumentBuilder:

Inserisci IF Campo

Il campo IF può essere utilizzato per valutare gli argomenti in modo condizionale.

L’esempio di codice seguente mostra come aggiungere campi IF usando DocumentBuilder:

Inserimento di campi in un documento utilizzando FieldBuilder

Il modo alternativo per inserire i campi in Aspose.Words è la classe FieldBuilder. Fornisce un’interfaccia fluente per specificare gli switch di campo e i valori degli argomenti come testo, nodi o persino campi nidificati.

L’esempio di codice seguente mostra come inserire un campo in un documento utilizzando FieldBuilder:

Inserimento di campi usando DOM

È inoltre possibile inserire vari tipi di campi utilizzando Aspose.Words Modello oggetto documento (DOM). In questa sezione, vedremo alcuni esempi.

Inserimento di un campo di unione in un documento utilizzando DOM

MERGEFIELD field in Word document can be represented by the FieldMergeField class. You can use FieldMergeField class to perform the following operations:

  • specificare il nome del campo Unione
  • specificare la formattazione del campo Unione
  • specificare il testo compreso tra il separatore di campo e la fine del campo di unione
  • specificare il testo da inserire dopo il campo Unione se il campo non è vuoto
  • specificare il testo da inserire prima del campo Unione se il campo non è vuoto

L’esempio di codice seguente mostra come aggiungere il campo MERGE usando DOM a un paragrafo in un documento:

Inserimento del campo Mail Merge ADDRESSBLOCK in un documento utilizzando DOM

Il campo ADDRESSBLOCK viene utilizzato per inserire un blocco di indirizzi Mail Merge in un documento Word. Il campo ADDRESSBLOCK nel documento Word può essere rappresentato dalla classe FieldAddressBlock. È possibile utilizzare la classe FieldAddressBlock per eseguire le seguenti operazioni:

  • specificare se includere il nome del paese / regione nel campo
  • specificare se formattare l’indirizzo in base al paese / regione del destinatario come definito da POST * CODE (Unione Postale Universale 2006)
  • specificare il nome del paese/regione escluso
  • specificare il formato nome e indirizzo
  • specificare la lingua ID utilizzata per formattare l’indirizzo

L’esempio di codice seguente mostra come aggiungere il campo Mail Merge ADDRESSBLOCK usando DOM a un paragrafo in un documento:

Inserimento del campo ADVANCE in un documento senza usare DocumentBuilder

Il campo ADVANCE viene utilizzato per compensare il testo successivo all’interno di una riga a sinistra, a destra, in alto o in basso. Il campo ADVANCE nel documento Word può essere rappresentato dalla classe FieldAdvance. È possibile utilizzare la classe FieldAdvance per eseguire le seguenti operazioni:

  • specificare il numero di punti in base ai quali il testo che segue il campo deve essere spostato verticalmente dal bordo superiore della pagina
  • specificare il numero di punti in base ai quali il testo che segue il campo deve essere spostato orizzontalmente dal bordo sinistro della colonna, della cornice o della casella di testo
  • specificare il numero di punti in base ai quali il testo che segue il campo deve essere spostato a sinistra, a destra, verso l’alto o verso il basso

L’esempio di codice seguente mostra come aggiungere il campo ADVANCE usando DOM a un paragrafo in un documento:

Inserimento del campo ASK in un documento senza usare DocumentBuilder

Il campo ASK viene utilizzato per richiedere all’utente il testo da assegnare a un segnalibro nel documento Word. Il campo ASK nel documento Word può essere rappresentato dalla classe FieldAsk. È possibile utilizzare la classe FieldAsk per eseguire le seguenti operazioni:

  • specificare il nome del segnalibro
  • specificare la risposta utente predefinita (valore iniziale contenuto nella finestra del prompt)
  • specificare se la risposta dell’utente deve essere ricevuta una volta per un’operazione Mail Merge
  • specificare il testo del prompt (il titolo della finestra del prompt)

L’esempio di codice seguente mostra come aggiungere il campo ASK usando DOM a un paragrafo in un documento:

Inserimento del campo AUTHOR in un documento senza usare DocumentBuilder

Il campo AUTHOR viene utilizzato per specificare il nome dell’autore del documento dalle proprietà Document. Il campo AUTHOR nel documento Word può essere rappresentato dalla classe FieldAuthor. È possibile utilizzare la classe FieldAuthor per eseguire le seguenti operazioni:

  • specificare il nome dell’autore del documento

L’esempio di codice seguente mostra come aggiungere il campo AUTHOR usando DOM a un paragrafo in un documento:

Inserimento del campo INCLUDETEXT in un documento senza usare DocumentBuilder

Il campo INCLUDETEXT inserisce il testo e la grafica contenuti nel documento denominato nel codice del campo. È possibile inserire l’intero documento o una parte del documento a cui fa riferimento un segnalibro. Questo campo nel documento Word è rappresentato da INCLUDETEXT. È possibile utilizzare la classe FieldIncludeText per eseguire le seguenti operazioni:

  • specificare il nome del segnalibro del documento incluso
  • specificare la posizione del documento

L’esempio di codice seguente mostra come aggiungere il campo INCLUDETEXT usando DOM a un paragrafo in un documento:

Inserimento del campo TOA in un documento senza usare DocumentBuilder

Il campoTOA (Table of Authorities) crea e inserisce una tabella di autorità. Il campo TOA raccoglie le voci contrassegnate dai campi TA (Table of Authorities Entry). Microsoft Office Word inserisce il campo TOA quando si fa clic su Insert Table of Authorities nel gruppo Table of Authorities nella scheda References. Quando si visualizza il campo TOA nel documento, la sintassi è simile a questa:

{ TOA [Switches ] }

L’esempio di codice seguente mostra come aggiungere il campo TOA usando DOM a un paragrafo in un documento.