Chart2 Direct Title/Subtitle Font Only
Overview
The style_font()
method is used to set the font of the Title and Subtitle of a Chart,
similar options
as Fig. 821 Font Dialog, but without the dialog.
Setup
General setup for this example.
from __future__ import annotations
from pathlib import Path
import uno
from ooo.dyn.awt.gradient_style import GradientStyle
from ooodev.calc import CalcDoc, ZoomKind
from ooodev.loader.lo import Lo
from ooodev.utils.color import StandardColor
from ooodev.utils.data_type.color_range import ColorRange
def main() -> int:
with Lo.Loader(connector=Lo.ConnectPipe()):
fnm = Path.cwd() / "tmp" / "piechart.ods"
doc = CalcDoc.open_doc(fnm=fnm, visible=True)
Lo.delay(500)
doc.zoom(ZoomKind.ZOOM_100_PERCENT)
sheet = doc.sheets[0]
sheet["A1"].goto()
chart_table = sheet.charts[0]
chart_doc = chart_table.chart_doc
_ = chart_doc.style_border_line(
color=StandardColor.PURPLE_DARK1,
width=0.7,
)
_ = chart_doc.style_area_gradient(
step_count=64,
style=GradientStyle.SQUARE,
angle=45,
grad_color=ColorRange(
StandardColor.BLUE_DARK1,
StandardColor.PURPLE_LIGHT2,
),
)
title = chart_doc.get_title()
if title is None:
raise ValueError("Title not found")
title.style_font(
name="Lucida Calligraphy",
size=14,
font_style="italic",
)
Lo.delay(1_000)
doc.close()
return 0
if __name__ == "__main__":
SystemExit(main())
Apply the Font
Before formatting the chart is seen in Fig. 832.
Apply to Title
# ... other code
title = chart_doc.get_title()
if title is None:
raise ValueError("Title not found")
title.style_font(
name="Lucida Calligraphy",
size=14,
font_style="italic",
)
Running the above code will produce the following output shown in Fig. 639 and Fig. 640.
Fig. 639 Chart with Title Font set
Fig. 640 Chart Data Labels Dialog Font
Apply to Subtitle
# ... other code
sub_title = chart_doc.first_diagram.get_title()
if sub_title is None:
raise ValueError("Title not found")
sub_title.style_font(
name="Lucida Calligraphy",
size=14,
font_style="italic",
)
Running the above code will produce the following output shown in Fig. 641.
Fig. 641 Chart with Subtitle Font set