DefaultFontSubstitutionRule class

DefaultFontSubstitutionRule class

Default font substitution rule. To learn more, visit the Working with Fonts documentation article.

Remarks

This rule defines single default font name to be used for substitution if the original font is not available.

Inheritance: DefaultFontSubstitutionRuleFontSubstitutionRule

Properties

NameDescription
default_font_nameGets or sets the default font name.
enabledSpecifies whether the rule is enabled or not.
(Inherited from FontSubstitutionRule)

Examples

Shows how to set the default font substitution rule.

doc = aw.Document()
font_settings = aw.fonts.FontSettings()
doc.font_settings = font_settings

# Get the default substitution rule within FontSettings.
# This rule will substitute all missing fonts with "Times New Roman".
default_font_substitution_rule = font_settings.substitution_settings.default_font_substitution
self.assertTrue(default_font_substitution_rule.enabled)
self.assertEqual("Times New Roman", default_font_substitution_rule.default_font_name)

# Set the default font substitute to "Courier New".
default_font_substitution_rule.default_font_name = "Courier New"

# Using a document builder, add some text in a font that we do not have to see the substitution take place,
# and then render the result in a PDF.
builder = aw.DocumentBuilder(doc)

builder.font.name = "Missing Font"
builder.writeln("Line written in a missing font, which will be substituted with Courier New.")

doc.save(ARTIFACTS_DIR + "FontSettings.default_font_substitution_rule.pdf")

See Also