Верхние и нижние колонтитулы очень полезны для добавления относительной информации, такой как номера страниц, название компании и логотип, в документы Word. В этой статье мы расскажем, как добавить верхние и нижние колонтитулы в документ Word на Java с помощью FreeSpire. Документ для Java API .
В следующих примерах мы увидим, как добавлять различные типы верхних и нижних колонтитулов в документ Word с помощью freeSpire. Документ для Java:
• Добавить простой верхний и нижний колонтитулы • Добавьте другой верхний и нижний колонтитулы первой страницы • Добавьте разные верхние и нижние колонтитулы для четных и нечетных страниц
1. Добавьте простой верхний и нижний колонтитулы
Чтобы добавить верхний и нижний колонтитулы в раздел документа, сначала нам нужно использовать метод getHeadersFooters, чтобы получить коллекцию всех верхних и нижних колонтитулов в разделе, а затем использовать метод getHeader или getFooter для возврата простого объекта верхнего или нижнего колонтитула, затем мы можем добавить текст, изображение или таблицу в раздел. верхний или нижний колонтитул.
private static void addHeaderFooter(Section section){
//Add header
HeadersFooters headersFooters = section.getHeadersFooters();
HeaderFooter header = headersFooters.getHeader();
Paragraph headerParagraph = header.addParagraph();
TextRange hText = headerParagraph.appendText("Page Header");
//Set header text format
hText.getCharacterFormat().setFontName("Calibri");
hText.getCharacterFormat().setFontSize(15f);
hText.getCharacterFormat().setTextColor(Color.blue);
//Set header paragraph format
headerParagraph.getFormat().setHorizontalAlignment(HorizontalAlignment.Left);
//border
headerParagraph.getFormat().getBorders().getBottom().setBorderType(BorderStyle.Thick_Thin_Small_Gap);
headerParagraph.getFormat().getBorders().getBottom().setSpace(0.05f);
headerParagraph.getFormat().getBorders().getBottom().setColor(Color.darkGray);
//Add footer
com.spire.doc.HeaderFooter footer = section.getHeadersFooters().getFooter();
Paragraph footerParagraph = footer.addParagraph();
//Insert page number
footerParagraph.appendField("page number", FieldType.Field_Page);
footerParagraph.appendText(" of ");
footerParagraph.appendField("number of pages", FieldType.Field_Num_Pages);
footerParagraph.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);
//Border
footerParagraph.getFormat().getBorders().getTop().setBorderType(BorderStyle.Thick_Thin_Small_Gap);
footerParagraph.getFormat().getBorders().getTop().setSpace(0.05f);
}
2. Добавьте другой верхний и нижний колонтитулы первой страницы
Добавьте другой верхний и нижний колонтитулы первой страницы
private static void addDifferentFirstPageHeaderFooter(Section section){
//Specify different headers and footers for the first page
section.getPageSetup().setDifferentFirstPageHeaderFooter(true);
//First page header
Paragraph headerParagraph1 = section.getHeadersFooters().getFirstPageHeader().addParagraph();
headerParagraph1.getFormat().setHorizontalAlignment(HorizontalAlignment.Left);
//Header image
DocPicture headerImage = headerParagraph1.appendPicture("C:\\Users\\Administrator\\Desktop\\PIC\\th.jpg");
headerImage.setWidth(150f);
headerImage.setHeight(75f);
//First page footer
Paragraph footerParagraph1 = section.getHeadersFooters().getFirstPageFooter().addParagraph();
footerParagraph1.getFormat().setHorizontalAlignment(HorizontalAlignment.Left);
TextRange fText = footerParagraph1.appendText("First Page Footer");
fText.getCharacterFormat().setFontSize(15f);
//Header for other pages
Paragraph headerParagraph2 = section.getHeadersFooters().getHeader().addParagraph();
headerParagraph2.getFormat().setHorizontalAlignment(HorizontalAlignment.Left);
TextRange hText = headerParagraph2.appendText("Other Page Header");
hText.getCharacterFormat().setFontSize(15f);
//Footer for other pages
Paragraph footerParagraph2 = section.getHeadersFooters().getFooter().addParagraph();
footerParagraph2.getFormat().setHorizontalAlignment(HorizontalAlignment.Left);
fText = footerParagraph2.appendText("Other Page Footer");
fText.getCharacterFormat().setFontSize(15f);
}
3. Добавьте разные верхние и нижние колонтитулы для четных и нечетных страниц
Мы можем использовать метод set Different OddAndEvenPagesHeaderFooter с объектом PageSetup, чтобы указать разные верхние/нижние колонтитулы для нечетных и четных страниц.
private static void addOddAndEvenPagesHeaderAndFooter(Section section){
//Specify different headers and footers for odd and even pages
section.getPageSetup().setDifferentOddAndEvenPagesHeaderFooter(true);
//Odd page header
Paragraph oddHeader = section.getHeadersFooters().getOddHeader().addParagraph();
oddHeader.getFormat().setHorizontalAlignment(HorizontalAlignment.Left);
TextRange oHText = oddHeader.appendText("Odd Page Header");
//Set header text format
oHText.getCharacterFormat().setFontName("Calibri");
oHText.getCharacterFormat().setFontSize(15f);
oHText.getCharacterFormat().setTextColor(Color.blue);
//Odd page footer
Paragraph oddFooter = section.getHeadersFooters().getOddFooter().addParagraph();
oddFooter.getFormat().setHorizontalAlignment(HorizontalAlignment.Left);
TextRange oFText = oddFooter.appendText("Odd Page Footer");
oFText.getCharacterFormat().setFontName("Calibri");
oFText.getCharacterFormat().setFontSize(15f);
oFText.getCharacterFormat().setTextColor(Color.blue);
//Even page header
Paragraph evenHeader = section.getHeadersFooters().getEvenHeader().addParagraph();
evenHeader.getFormat().setHorizontalAlignment(HorizontalAlignment.Left);
TextRange eHText = evenHeader.appendText("Even Page Header");
eHText.getCharacterFormat().setFontName("Calibri");
eHText.getCharacterFormat().setFontSize(15f);
eHText.getCharacterFormat().setTextColor(Color.green);
//Even page footer
Paragraph evenFooter = section.getHeadersFooters().getEvenFooter().addParagraph();
evenFooter.getFormat().setHorizontalAlignment(HorizontalAlignment.Left);
TextRange eFText = evenFooter.appendText("Even Page Footer");
eFText.getCharacterFormat().setFontName("Calibri");
eFText.getCharacterFormat().setFontSize(15f);
eFText.getCharacterFormat().setTextColor(Color.green);
}
Дополнительная информация
Веб-сайт: https://www.e-iceblue.com/ Форум поддержки: FreeSpire. Документ для Java
Оригинал: “https://dev.to/eiceblue/add-headers-and-footers-to-word-document-in-java-dah”