Write Modify Page Header

The ooodev.format.writer.modify.page.header.Header class is used to modify the page header values seen in Fig. 1144 of a Writer document.

Setup

General function used to run these examples.

from ooodev.format.writer.modify.page.header import Header, WriterStylePageKind
from ooodev.utils.color import StandardColor
from ooodev.office.write import Write
from ooodev.gui import GUI
from ooodev.loader.lo import Lo

def main() -> int:
    with Lo.Loader(Lo.ConnectPipe()):
        doc = Write.create_doc()
        GUI.set_visible(doc=doc)
        Lo.delay(300)
        GUI.zoom(GUI.ZoomEnum.ENTIRE_PAGE)

        header_style = Header(
            on=True,
            shared_first=True,
            shared=True,
            height=10.0,
            spacing=3.0,
            spacing_dyn=True,
            margin_left=1.5,
            margin_right=2.0,
            style_name=WriterStylePageKind.STANDARD,
        )
        header_style.apply(doc)

        style_obj = Header.from_style(doc=doc, style_name=WriterStylePageKind.STANDARD)
        assert style_obj.prop_style_name == str(WriterStylePageKind.STANDARD)

        Lo.delay(1_000)

        Lo.close_doc(doc)
    return 0

if __name__ == "__main__":
    SystemExit(main())

Applying Header Style

Before applying style

Writer dialog Page Header default

Fig. 1144 Writer dialog Page Header default

Apply Style

header_style = Header(
    on=True,
    shared_first=True,
    shared=True,
    height=10.0,
    spacing=3.0,
    spacing_dyn=True,
    margin_left=1.5,
    margin_right=2.0,
    style_name=WriterStylePageKind.STANDARD,
)
header_style.apply(doc)

After applying style

Writer dialog Page Header set with Header class

Fig. 1145 Writer dialog Page Header set with Header class

Getting the Header from a style

style_obj = Header.from_style(doc=doc, style_name=WriterStylePageKind.STANDARD)
assert style_obj.prop_style_name == str(WriterStylePageKind.STANDARD)