Font Substitution - PowerPoint Java API
Contents
[
Hide
]
Aspose.Slides allows you to set rules for fonts that determines what must be done in certain conditions (for example, when a font cannot be accessed) this way:
- Load the relevant presentation.
- Load the font that will be replaced.
- Load the new font.
- Add a rule for the replacement.
- Add the rule to the presentation font replacement rule collection.
- Generate the slide image to observe the effect.
This PHP code demonstrates the font substitution process:
# Loads a presentation
$pres = new Presentation("Fonts.pptx");
try {
# Loads the source font that will be replaced
$sourceFont = new FontData("SomeRareFont");
# Loads the new font
$destFont = new FontData("Arial");
# Adds a font rule for font replacement
$fontSubstRule = new FontSubstRule($sourceFont, $destFont, FontSubstCondition->WhenInaccessible);
# Adds the rule to font substitute rules collection
$fontSubstRuleCollection = new FontSubstRuleCollection();
$fontSubstRuleCollection->add($fontSubstRule);
# Adds a font rule collection to the rule list
$pres->getFontsManager()->setFontSubstRuleList($fontSubstRuleCollection);
# Arial font will be used in place of SomeRareFont when the latter is inaccessible
$slideImage = $pres->getSlides()->get_Item(0)->getImage(1.0, 1.0);
# Saves the image to disk in the JPEG format
try {
$slideImage->save("Thumbnail_out.jpg", ImageFormat::Jpeg);
} finally {
if (!java_is_null($slideImage)) {
$slideImage->dispose();
}
}
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}