PageSetup class

PageSetup class

Represents the page setup properties of a section. To learn more, visit the Working with Sections documentation article.

Remarks

PageSetup object contains all the page setup attributes of a section (left margin, bottom margin, paper size, and so on) as properties.

Properties

NameDescription
bidiSpecifies that this section contains bidirectional (complex scripts) text.
border_always_in_frontSpecifies where the page border is positioned relative to intersecting texts and objects.
border_applies_toSpecifies which pages the page border is printed on.
border_distance_fromGets or sets a value that indicates whether the specified page border is measured from the edge of the page or from the text it surrounds.
border_surrounds_footerSpecifies whether the page border includes or excludes the footer.
border_surrounds_headerSpecifies whether the page border includes or excludes the header.
bordersGets a collection of the page borders.
bottom_marginReturns or sets the distance (in points) between the bottom edge of the page and the bottom boundary of the body text.
chapter_page_separatorGets or sets the separator character that appears between the chapter number and the page number.
characters_per_lineGets or sets the number of characters per line in the document grid.
different_first_page_header_footerTrue if a different header or footer is used on the first page.
endnote_optionsProvides options that control numbering and positioning of endnotes in this section.
first_page_trayGets or sets the paper tray (bin) to use for the first page of a section. The value is implementation (printer) specific.
footer_distanceReturns or sets the distance (in points) between the footer and the bottom of the page.
footnote_optionsProvides options that control numbering and positioning of footnotes in this section.
gutterGets or sets the amount of extra space added to the margin for document binding.
header_distanceReturns or sets the distance (in points) between the header and the top of the page.
heading_level_for_chapterGets or sets the heading level style that is applied to the chapter titles in the document.
layout_modeGets or sets the layout mode of this section.
left_marginReturns or sets the distance (in points) between the left edge of the page and the left boundary of the body text.
line_number_count_byReturns or sets the numeric increment for line numbers.
line_number_distance_from_textGets or sets distance between the right edge of line numbers and the left edge of the document.
line_number_restart_modeGets or sets the way line numbering runs that is, whether it starts over at the beginning of a new page or section or runs continuously.
line_starting_numberGets or sets the starting line number.
lines_per_pageGets or sets the number of lines per page in the document grid.
marginsReturns or sets preset Margins of the page.
multiple_pagesFor multiple page documents, gets or sets how a document is printed or rendered so that it can be bound as a booklet.
odd_and_even_pages_header_footerTrue if the document has different headers and footers for odd-numbered and even-numbered pages.
orientationReturns or sets the orientation of the page.
other_pages_trayGets or sets the paper tray (bin) to be used for all but the first page of a section. The value is implementation (printer) specific.
page_heightReturns or sets the height of the page in points.
page_number_styleGets or sets the page number format.
page_starting_numberGets or sets the starting page number of the section.
page_widthReturns or sets the width of the page in points.
paper_sizeReturns or sets the paper size.
restart_page_numberingTrue if page numbering restarts at the beginning of the section.
right_marginReturns or sets the distance (in points) between the right edge of the page and the right boundary of the body text.
rtl_gutterGets or sets whether Microsoft Word uses gutters for the section based on a right-to-left language or a left-to-right language.
section_startReturns or sets the type of section break for the specified object.
sheets_per_bookletReturns or sets the number of pages to be included in each booklet.
suppress_endnotesTrue if endnotes are printed at the end of the next section that doesn’t suppress endnotes. Suppressed endnotes are printed before the endnotes in that section.
text_columnsReturns a collection that represents the set of text columns.
text_orientationAllows to specify PageSetup.text_orientation for the whole page. Default value is TextOrientation.HORIZONTAL
top_marginReturns or sets the distance (in points) between the top edge of the page and the top boundary of the body text.
vertical_alignmentReturns or sets the vertical alignment of text on each page in a document or section.

Methods

NameDescription
clear_formatting()Resets page setup to default paper size, margins and orientation.

Examples

Shows how to apply and revert page setup settings to sections in a document.

doc = aw.Document()
builder = aw.DocumentBuilder(doc=doc)
# Modify the page setup properties for the builder's current section and add text.
builder.page_setup.orientation = aw.Orientation.LANDSCAPE
builder.page_setup.vertical_alignment = aw.PageVerticalAlignment.CENTER
builder.writeln('This is the first section, which landscape oriented with vertically centered text.')
# If we start a new section using a document builder,
# it will inherit the builder's current page setup properties.
builder.insert_break(aw.BreakType.SECTION_BREAK_NEW_PAGE)
self.assertEqual(aw.Orientation.LANDSCAPE, doc.sections[1].page_setup.orientation)
self.assertEqual(aw.PageVerticalAlignment.CENTER, doc.sections[1].page_setup.vertical_alignment)
# We can revert its page setup properties to their default values using the "ClearFormatting" method.
builder.page_setup.clear_formatting()
self.assertEqual(aw.Orientation.PORTRAIT, doc.sections[1].page_setup.orientation)
self.assertEqual(aw.PageVerticalAlignment.TOP, doc.sections[1].page_setup.vertical_alignment)
builder.writeln('This is the second section, which is in default Letter paper size, portrait orientation and top alignment.')
doc.save(file_name=ARTIFACTS_DIR + 'PageSetup.ClearFormatting.docx')

See Also