When you need to place some data into a header or footer, you should move there first using MoveToHeaderFooter. The method accepts a HeaderFooterType enumeration value that identifies the type of header or footer to where the cursor should be moved.
If you want to create headers and footers that are different for the first page, you need to set the PageSetup.DifferentFirstPageHeaderFooter property to true. If you want to create headers and footers that are different for even and odd pages, you need to set PageSetup.OddAndEvenPagesHeaderFooter to true.
If you need to get back to the main story, use MoveToSection to move out of the header or footer.
Example DocumentBuilderMoveToHeaderFooter
Creates headers and footers in a document using DocumentBuilder.
[C#]
// Create a blank document.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// Specify that we want headers and footers different for first, even and odd pages.
builder.PageSetup.DifferentFirstPageHeaderFooter = true;
builder.PageSetup.OddAndEvenPagesHeaderFooter = true;
// Create the headers.
builder.MoveToHeaderFooter(HeaderFooterType.HeaderFirst);
builder.Write("Header First");
builder.MoveToHeaderFooter(HeaderFooterType.HeaderEven);
builder.Write("Header Even");
builder.MoveToHeaderFooter(HeaderFooterType.HeaderPrimary);
builder.Write("Header Odd");
// Create three pages in the document.
builder.MoveToSection(0);
builder.Writeln("Page1");
builder.InsertBreak(BreakType.PageBreak);
builder.Writeln("Page2");
builder.InsertBreak(BreakType.PageBreak);
builder.Writeln("Page3");
doc.Save(MyDir + "DocumentBuilder.HeadersAndFooters Out.doc");
[Visual Basic]
' Create a blank document.
Dim doc As Document = New Document()
Dim builder As DocumentBuilder = New DocumentBuilder(doc)
' Specify that we want headers and footers different for first, even and odd pages.
builder.PageSetup.DifferentFirstPageHeaderFooter = True
builder.PageSetup.OddAndEvenPagesHeaderFooter = True
' Create the headers.
builder.MoveToHeaderFooter(HeaderFooterType.HeaderFirst)
builder.Write("Header First")
builder.MoveToHeaderFooter(HeaderFooterType.HeaderEven)
builder.Write("Header Even")
builder.MoveToHeaderFooter(HeaderFooterType.HeaderPrimary)
builder.Write("Header Odd")
' Create three pages in the document.
builder.MoveToSection(0)
builder.Writeln("Page1")
builder.InsertBreak(BreakType.PageBreak)
builder.Writeln("Page2")
builder.InsertBreak(BreakType.PageBreak)
builder.Writeln("Page3")
doc.Save(MyDir & "DocumentBuilder.HeadersAndFooters Out.doc")
[Java]
// Create a blank document.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// Specify that we want headers and footers different for first, even and odd pages.
builder.getPageSetup().setDifferentFirstPageHeaderFooter(true);
builder.getPageSetup().setOddAndEvenPagesHeaderFooter(true);
// Create the headers.
builder.moveToHeaderFooter(HeaderFooterType.HEADER_FIRST);
builder.write("Header First");
builder.moveToHeaderFooter(HeaderFooterType.HEADER_EVEN);
builder.write("Header Even");
builder.moveToHeaderFooter(HeaderFooterType.HEADER_PRIMARY);
builder.write("Header Odd");
// Create three pages in the document.
builder.moveToSection(0);
builder.writeln("Page1");
builder.insertBreak(BreakType.PAGE_BREAK);
builder.writeln("Page2");
builder.insertBreak(BreakType.PAGE_BREAK);
builder.writeln("Page3");
doc.save(getMyDir() + "DocumentBuilder.HeadersAndFooters Out.doc");