Write Modify Paragraph Area Gradient

The ooodev.format.writer.modify.para.area.Gradient class is used to modify the values seen in Fig. 1071 of a paragraph style.

Setup

from ooodev.format.writer.modify.para.area import Gradient as ParaStyleGradient, StyleParaKind
from ooodev.format.writer.modify.para.area import PresetGradientKind

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

        para_area_gradient_style = ParaStyleGradient.from_preset(
            preset=PresetGradientKind.GREEN_GRASS, style_name=StyleParaKind.STANDARD
        )
        para_area_gradient_style.apply(doc)

        style_obj = ParaStyleGradient.from_style(doc=doc, style_name=StyleParaKind.STANDARD)
        assert style_obj.prop_style_name == str(StyleParaKind.STANDARD)
        Lo.delay(1_000)

        Lo.close_doc(doc)

    return 0


if __name__ == "__main__":
    sys.exit(main())

Apply alignment to a style

Before applying Style

Writer dialog Paragraph Area Gradient style default

Fig. 1071 Writer dialog Paragraph Area Gradient style default

Apply style

# ... other code

para_area_gradient_style = ParaStyleGradient.from_preset(
    preset=PresetGradientKind.GREEN_GRASS, style_name=StyleParaKind.STANDARD
)
para_area_gradient_style.apply(doc)

After appling style

Writer dialog Paragraph Area Gradient style changed

Fig. 1072 Writer dialog Paragraph Gradient style changed

Getting the area gradient from a style

We can get the area gradient from the document.

# ... other code

style_obj = ParaStyleGradient.from_style(doc=doc, style_name=StyleParaKind.STANDARD)
assert style_obj.prop_style_name == str(StyleParaKind.STANDARD)