在这篇文章“Java添加Word页眉页脚”中介绍了如何在Word中添加页眉页脚,包括添加文本、图片到页眉,设置页码等。本文章将演示通过Spire.Doc for Java 来设置Word中奇数页和偶数页页眉页脚不同、首页和非首页页眉页脚不同的方法。
设置奇偶数页页眉页脚不同
import com.spire.doc.*;
import com.spire.doc.documents.HorizontalAlignment;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.fields.TextRange;
import java.awt.*;
public class HeaderFooterForOddAndEvenPages {
public static void main(String[] args){
//加载测试文档
Document doc = new Document("测试.docx");
Section sec = doc.getSections().get(0);
//设置奇偶页页眉页脚不同
sec.getPageSetup().setDifferentOddAndEvenPagesHeaderFooter(true);
//设置奇数页页眉页脚
HeaderFooter oddheader = sec.getHeadersFooters().getOddHeader();
Paragraph para1 = oddheader.addParagraph();
TextRange textRange1 = para1.appendText("奇数页页眉");
para1.getFormat().setHorizontalAlignment(HorizontalAlignment.Left);
textRange1.getCharacterFormat().setTextColor(Color.MAGENTA);
textRange1.getCharacterFormat().setBold(true);
textRange1.getCharacterFormat().setFontSize(15f);
HeaderFooter oddfooter = sec.getHeadersFooters().getOddFooter();
Paragraph para2 = oddfooter.addParagraph();
TextRange textRange2 = para2.appendText("奇数页页脚");
para2.getFormat().setHorizontalAlignment(HorizontalAlignment.Left);
textRange2.getCharacterFormat().setTextColor(Color.MAGENTA);
textRange2.getCharacterFormat().setBold(true);
textRange2.getCharacterFormat().setFontSize(15f);
//设置偶数页页眉页脚
HeaderFooter evenheader = sec.getHeadersFooters().getEvenHeader();
Paragraph para3 = evenheader.addParagraph();
TextRange textRange3 = para3.appendText("偶数页页眉");
para3.getFormat().setHorizontalAlignment(HorizontalAlignment.Right);
textRange3.getCharacterFormat().setTextColor(Color.BLUE);
textRange3.getCharacterFormat().setBold(true);
textRange3.getCharacterFormat().setFontSize(15f);
HeaderFooter evenfooter = sec.getHeadersFooters().getEvenFooter();
Paragraph para4 = evenfooter.addParagraph();
TextRange textRange4 = para4.appendText("偶数页页脚");
para4.getFormat().setHorizontalAlignment(HorizontalAlignment.Right);
textRange4.getCharacterFormat().setTextColor(Color.BLUE);
textRange4.getCharacterFormat().setBold(true);
textRange4.getCharacterFormat().setFontSize(15f);
//保存文档
doc.saveToFile("result1.docx",FileFormat.Docx_2010);
}
}
奇/偶页页眉页脚效果:
设置首页页眉页脚不同
import com.spire.doc.*;
import com.spire.doc.documents.HorizontalAlignment;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.fields.TextRange;
import java.awt.*;
public class HeaderFooterDifferentFromFirstPage {
public static void main(String[] args){
//加载测试文的
Document doc = new Document("测试.docx");
Section sec = doc.getSections().get(0);
//设置首页页眉页脚不同
sec.getPageSetup().setDifferentFirstPageHeaderFooter(true);
//添加首页页眉页脚
HeaderFooter firstpageheader = sec.getHeadersFooters().getFirstPageHeader();
Paragraph para1 = firstpageheader.addParagraph();
TextRange textRange1 = para1.appendText("首页页眉");
para1.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);
textRange1.getCharacterFormat().setBold(true);
textRange1.getCharacterFormat().setFontSize(15f);
textRange1.getCharacterFormat().setTextColor(Color.GREEN);
HeaderFooter firstpagefooter = sec.getHeadersFooters().getFirstPageFooter();
Paragraph para2 = firstpagefooter.addParagraph();
TextRange textRange2 = para2.appendText("首页页脚");
para2.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);
textRange2.getCharacterFormat().setBold(true);
textRange2.getCharacterFormat().setFontSize(15f);
textRange2.getCharacterFormat().setTextColor(Color.GREEN);
//添加页眉页脚到其他非首页的页面
Paragraph para3 = sec.getHeadersFooters().getHeader().addParagraph();
para3.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);
TextRange textRange3 = para3.appendText("非首页页眉");
textRange3.getCharacterFormat().setBold(true);
textRange3.getCharacterFormat().setFontSize(15f);
Paragraph para4 = sec.getHeadersFooters().getFooter().addParagraph();
para4.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);
TextRange textRange4 = para4.appendText("非首页页脚");
textRange4.getCharacterFormat().setBold(true);
textRange4.getCharacterFormat().setFontSize(15f);
//保存文档
doc.saveToFile("result2.docx",FileFormat.Docx_2010);
}
}
首页/非首页页眉页脚设置效果: