Working with Footnote and Endnote

Aspose.Words also provides some classes, methods and properties for working with footnotes and endnotes.

Insert Endnote and Set Numbering Options

If you want to insert footnote or endnote in Word document, please use insert_footnote method. This method inserts a footnote or endnote into the document.

EndnoteOptions and FootnoteOptions classes represent numbering options for footnote and endnote.

The following code example shows how to insert endnote into the document and set its numbering options:

# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET
doc = aw.Document(docs_base.my_dir + "Document.docx")
builder = aw.DocumentBuilder(doc)
builder.write("Some text")
builder.insert_footnote(aw.notes.FootnoteType.ENDNOTE, "Footnote text.")
option = doc.endnote_options
option.restart_rule = aw.notes.FootnoteNumberingRule.RESTART_PAGE
option.position = aw.notes.EndnotePosition.END_OF_SECTION
doc.save(docs_base.artifacts_dir + "WorkingWithFootnotes.set_endnote_options.docx")

Set Number of Footnote Layout Columns

You can set the number of footnote layout columns using the columns property. If this property has the value of 0, the footnotes area is formatted with a number of columns based on the number of columns on the displayed page.

The following code example shows how to set the number of columns for footnote layout:

# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET
doc = aw.Document(docs_base.my_dir + "Document.docx")
# Specify the number of columns with which the footnotes area is formatted.
doc.footnote_options.columns = 3
doc.save(docs_base.artifacts_dir + "WorkingWithFootnotes.set_foot_note_columns.docx")

Set the Position of Footnote and EndNote

The footnote position can be at the bottom of each page or beneath the text on each page. The endnote position can be at the end of the section or at the end of the document.

The following code example shows how to set the position of footnote and endnote:

# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET
doc = aw.Document(docs_base.my_dir + "Document.docx")
doc.footnote_options.position = aw.notes.FootnotePosition.BENEATH_TEXT
doc.endnote_options.position = aw.notes.EndnotePosition.END_OF_SECTION
doc.save(docs_base.artifacts_dir + "WorkingWithFootnotes.set_footnote_and_end_note_position.docx")