Intestazione e piè di pagina sono comunemente usati nei documenti per mostrare informazioni importanti come numero di pagina, argomento, capitolo, ecc. Puoi aggiungere, inserire, eliminare o rimuovere intestazione e piè di pagina nei documenti Word DOCX DOC utilizzando le tue applicazioni Java. In questo articolo impareremo come aggiungere o rimuovere intestazioni e piè di pagina. Di seguito gli argomenti che esploreremo in dettaglio:
- Inserisci o rimuovi API di intestazione e piè di pagina – Installazione
- Aggiungi intestazione e piè di pagina nel documento Word (DOCX/DOC) utilizzando Java
- Elimina intestazione e piè di pagina del documento Word (DOCX/DOC) utilizzando Java
- Rimuovere il piè di pagina dal documento di Word (DOCX/DOC) utilizzando Java
- Rimuovere l’intestazione dal documento di Word (DOCX/DOC) utilizzando Java
Inserisci o rimuovi l’API del piè di pagina dell’intestazione – Installazione
Per lavorare con intestazione e piè di pagina nei documenti Word, utilizzeremo l’API Aspose.Words for Java in cui semplici chiamate API ci aiuteranno a soddisfare i requisiti. Puoi scaricare il file JAR dalla sezione rilasci o copiare le seguenti configurazioni Maven nel tuo progetto. L’API verrà configurata tramite il repository Maven e sarà bene procedere con gli ulteriori passaggi spiegati in questo articolo.
Archivio:
<repositories>
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
</repositories>
Dipendenza:
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-words</artifactId>
<version>20.8</version>
<classifier>jdk17</classifier>
</dependency>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-words</artifactId>
<version>20.8</version>
<classifier>javadoc</classifier>
</dependency>
</dependencies>
Aggiungi intestazione e piè di pagina nel documento Word (DOCX/DOC) utilizzando Java
L’aggiunta di intestazione e piè di pagina nei documenti di Word (DOCX/DOC) è un caso d’uso di base ma importante per lavorare con i documenti di elaborazione testi. Tuttavia, sono possibili diversi scenari. Ad esempio, potrebbe essere necessario aggiungere un’immagine, una tabella o solo del testo nella sezione dell’intestazione e del piè di pagina. Inoltre, a volte l’intestazione e il piè di pagina sono diversi nella pagina del titolo rispetto ad altre pagine. A volte l’intestazione e il piè di pagina sono diversi sui numeri di pagina pari e diversi sui numeri di pagina dispari. Pertanto, abbiamo creato un esempio conciso e di base dell’aggiunta di intestazione e piè di pagina nei documenti di Word.
Qui inseriremo un diverso piè di pagina dell’intestazione nella pagina del titolo (prima pagina) e un diverso piè di pagina dell’intestazione nella pagina successiva. Considerando che, la seconda pagina avrà un piè di pagina di intestazione personalizzato che include immagini, testo ed elementi di tabella. È necessario seguire i passaggi seguenti per aggiungere o inserire intestazione e piè di pagina nei documenti Word (DOCX/DOC) utilizzando Java.
- Inizializza gli oggetti di classe Document e DocumentBuilder.
- Specifica che desideri un piè di pagina dell’intestazione diverso per la pagina del titolo
- Imposta le proprietà del carattere per il testo dell’intestazione
- Crea intestazione e per le pagine successive
- Inserisci la tabella e imposta il formato del numero di pagina
- Salva il file DOCX di output
Il codice seguente si basa su questi passaggi che mostrano come aggiungere intestazione e piè di pagina nei documenti Word (DOCX/DOC) a livello di codice utilizzando Java:
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Section currentSection = builder.getCurrentSection();
PageSetup pageSetup = currentSection.getPageSetup();
// Specificare se vogliamo che le intestazioni/piè di pagina della prima pagina siano diversi dalle altre pagine.
// Puoi anche usare la proprietà PageSetup.OddAndEvenPagesHeaderFooter per specificare
// intestazioni/piè di pagina differenti per le pagine pari e dispari.
pageSetup.setDifferentFirstPageHeaderFooter(true);
// --- Crea un'intestazione per la prima pagina. ---
pageSetup.setHeaderDistance(20);
builder.moveToHeaderFooter(HeaderFooterType.HEADER_FIRST);
builder.getParagraphFormat().setAlignment(ParagraphAlignment.CENTER);
// Imposta le proprietà del carattere per il testo dell'intestazione.
builder.getFont().setName("Arial");
builder.getFont().setBold(true);
builder.getFont().setSize(14);
// Specifica il titolo dell'intestazione per la prima pagina.
builder.write("Aspose.Words Header/Footer Creation - Title Page.");
// --- Crea intestazione per pagine diverse dalla prima. ---
pageSetup.setHeaderDistance(20);
builder.moveToHeaderFooter(HeaderFooterType.HEADER_PRIMARY);
// Inserisci un'immagine posizionata in modo assoluto nell'angolo superiore/sinistro dell'intestazione.
// La distanza dai bordi superiore/sinistro della pagina è impostata su 10 punti.
String imageFileName = dataDir + "Aspose.Words.gif";
builder.insertImage(imageFileName, RelativeHorizontalPosition.PAGE, 10, RelativeVerticalPosition.PAGE, 10, 50, 50, WrapType.THROUGH);
builder.getParagraphFormat().setAlignment(ParagraphAlignment.RIGHT);
// Specifica un altro titolo di intestazione per le altre pagine.
builder.write("Aspose.Words Header/Footer Creation");
// --- Crea piè di pagina per pagine diverse dalla prima. ---
builder.moveToHeaderFooter(HeaderFooterType.FOOTER_PRIMARY);
// Usiamo la tabella con due celle per creare una parte del testo sulla riga (con la numerazione delle pagine)
// da allineare a sinistra e l'altra parte del testo (con copyright) da allineare a destra.
builder.startTable();
// Cancella i bordi del tavolo
builder.getCellFormat().clearFormatting();
builder.insertCell();
// Imposta la prima cella su 1/3 della larghezza della pagina.
builder.getCellFormat().setPreferredWidth(PreferredWidth.fromPercent(100 / 3));
// Inserisci qui il testo della numerazione delle pagine.
// Utilizza i campi PAGE e NUMPAGES per calcolare automaticamente il numero di pagina corrente e il numero totale di pagine.
builder.write("Page ");
builder.insertField("PAGE", "");
builder.write(" of ");
builder.insertField("NUMPAGES", "");
// Allinea questo testo a sinistra.
builder.getCurrentParagraph().getParagraphFormat().setAlignment(ParagraphAlignment.LEFT);
builder.insertCell();
// Imposta la seconda cella su 2/3 della larghezza della pagina.
builder.getCellFormat().setPreferredWidth(PreferredWidth.fromPercent(100 * 2 / 3));
builder.write("(C) 2020 Aspose Pty Ltd. All rights reserved.");
// Allinea questo testo a destra.
builder.getCurrentParagraph().getParagraphFormat().setAlignment(ParagraphAlignment.RIGHT);
builder.endRow();
builder.endTable();
builder.moveToDocumentEnd();
// Crea un'interruzione di pagina per creare una seconda pagina in cui verranno visualizzate le intestazioni/piè di pagina principali.
builder.insertBreak(BreakType.PAGE_BREAK);
// Salva il documento risultante.
doc.save(dataDir + "HeaderFooter_Out.docx");
Finora abbiamo imparato come aggiungere o inserire intestazione e piè di pagina nei file di parole. Di seguito è riportato uno screenshot di come appare l’output quando lo vedi tramite l’opzione Anteprima di stampa.
Questa funzione può essere di grande aiuto quando diversi documenti DOC/DOCX vengono elaborati dalle applicazioni in cui si desidera aggiungere del contenuto come piè di pagina dell’intestazione dei documenti di output.

Procediamo con il check-out eliminando l’intestazione e il piè di pagina dai file MS Word (DOCX/DOC).
Elimina intestazione e piè di pagina del documento Word (DOCX/DOC) utilizzando Java
È possibile eliminare l’intestazione e il piè di pagina dei documenti Word utilizzando Aspose.Words per l’API Java. Come discusso in precedenza, in un documento potrebbero essere aggiunti tre diversi tipi di intestazione e piè di pagina. Ad esempio, sul frontespizio, sulle pagine pari e sui numeri di pagina dispari. Puoi eliminare tutte le intestazioni e i piè di pagina in un file word semplicemente seguendo i passaggi seguenti:
- Carica il file DOCX/DOC di origine
- Trova intestazione e piè di pagina nella pagina del titolo, numeri di pagina pari e numeri di pagina dispari
- Elimina la sezione richiesta quando viene trovata
- Salva il file DOCX di output
Il codice seguente segue questi passaggi e mostra come eliminare l’intestazione e il piè di pagina nei documenti Word utilizzando Java:
Document doc = new Document(dataDir + "HeaderFooter.doc");
for (Section section : doc.getSections()) {
// In una sezione sono possibili fino a tre diversi piè di pagina di intestazione (per le pagine prime, pari e dispari).
// Li controlliamo ed eliminiamo tutti.
HeaderFooter footer;
HeaderFooter header;
footer = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.FOOTER_FIRST);
header = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.HEADER_FIRST);
if (footer != null)
footer.remove();
if (header != null)
header.remove();
// Il piè di pagina dell'intestazione principale viene utilizzato per le pagine dispari.
footer = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.FOOTER_PRIMARY);
if (footer != null)
footer.remove();
header = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.HEADER_PRIMARY);
if (header != null)
header.remove();
footer = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.FOOTER_EVEN);
if (footer != null)
footer.remove();
header = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.HEADER_EVEN);
if (header != null)
header.remove();
}
doc.save(dataDir + "RemoveHeaderFooter_Out.docx");
Rimuovere il piè di pagina dal documento di Word (DOCX/DOC) utilizzando Java
Abbiamo già discusso come rimuovere o eliminare intestazione e piè di pagina dai file di Word. Tuttavia, potresti voler rimuovere solo i piè di pagina di un documento di Word lasciando intatta l’intestazione. Questi requisiti sono facilmente possibili con i seguenti passaggi:
- Carica file di parole sorgente (DOCX/DOC)
- Scorri ogni sezione del documento word
- Inizializza l’oggetto HeaderFooter.
- Elimina il piè di pagina dal file di input
- Salva il file DOCX/DOC aggiornato
Il seguente frammento di codice spiega come rimuovere il piè di pagina dal documento Word utilizzando Java:
Document doc = new Document(dataDir + "HeaderFooter.doc");
for (Section section : doc.getSections()) {
// Sono possibili fino a tre diversi piè di pagina in una sezione (per le pagine prime, pari e dispari).
// Li controlliamo ed eliminiamo tutti.
HeaderFooter footer;
footer = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.FOOTER_FIRST);
if (footer != null)
footer.remove();
// Il piè di pagina principale è il piè di pagina utilizzato per le pagine dispari.
footer = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.FOOTER_PRIMARY);
if (footer != null)
footer.remove();
footer = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.FOOTER_EVEN);
if (footer != null)
footer.remove();
}
doc.save(dataDir + "RemoveFooters.docx");
Rimuovere l’intestazione dal documento di Word (DOCX/DOC) utilizzando Java
Dal momento che abbiamo imparato a rimuovere o eliminare solo il piè di pagina dai file MS Word. Esploriamo ulteriormente questo ulteriore passaggio in cui potrebbe essere necessario rimuovere solo le intestazioni dai documenti di Word. I piè di pagina rimarranno gli stessi e inalterati perché il nostro obiettivo qui è eliminare solo le intestazioni. I seguenti passaggi forniscono uno schema della procedura da adottare a tal fine:
- Carica file Word di input (DOCX/DOC)
- Inizializza un’istanza della classe HeaderFooter.
- Rimuovere le intestazioni da tutte le sezioni del documento di input
- Salva il file DOCX di aggiornamento
Di seguito il codice mostra come eliminare o rimuovere l’intestazione dai documenti Word utilizzando Java:
Document doc = new Document(dataDir + "HeaderFooter.doc");
for (Section section : doc.getSections()) {
// Sono possibili fino a tre diversi piè di pagina in una sezione (per le pagine prime, pari e dispari).
// Li controlliamo ed eliminiamo tutti.
HeaderFooter header;
header = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.HEADER_FIRST);
if (header != null)
header.remove();
// Il piè di pagina principale è il piè di pagina utilizzato per le pagine dispari.
header = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.HEADER_PRIMARY);
if (header != null)
header.remove();
header = section.getHeadersFooters().getByHeaderFooterType(HeaderFooterType.HEADER_EVEN);
if (header != null)
header.remove();
}
doc.save(dataDir + "RemoveHeader.docx");
Conclusione
Aggiungere, inserire, rimuovere o eliminare intestazione e piè di pagina nei documenti di Word è un caso d’uso molto importante e frequente dell’elaborazione di testi. Quasi tutti i documenti contengono intestazioni e piè di pagina, che possono essere manipolati con Aspose.Words per l’API Java secondo le tue esigenze. Questo articolo è una panoramica delle funzionalità correlate in cui puoi discutere con noi di qualsiasi caso d’uso personalizzato e requisiti tramite Forum di supporto gratuito. Sentiti libero di contattarci per qualsiasi domanda e dubbio.