API public et changements incompatibles en arrière dans Aspose.Slides pour Java 15.1.0

Changements de l’API publique

Fonctionnalité de remplacement de polices ajoutée

La possibilité de remplacer les polices globalement dans la présentation et temporairement pour le rendu a été ajoutée.

La nouvelle méthode getFontsManager() de la classe Presentation a été introduite. La classe FontsManager a les membres suivants :

IFontSubstRuleCollection getFontSubstRuleList() méthode

C’est la collection d’instances IFontSubstRule utilisées pour substituer les polices lors du rendu. IFontSubstRule a les méthodes getSourceFont() et getDestFont() implémentant l’interface IFontData et la méthode getReplaceFontCondition() permettant de choisir la condition de remplacement (“WhenInaccessible” ou “Always”).

IFontData[] getFonts() méthode peut être utilisée pour récupérer toutes les polices utilisées dans la présentation actuelle.

Les méthodes replaceFont(…) peuvent être utilisées pour remplacer de manière persistante une police dans une présentation. 

L’exemple suivant montre comment remplacer une police dans une présentation :


 Presentation pres = new Presentation("PresContainsArialFont.pptx");

IFontData sourceFont = new FontData("Arial");

IFontData destFont = new FontData("Times New Roman");

pres.getFontsManager().replaceFont(sourceFont, destFont);

pres.save("PresContainsTimesNewRomanFont.pptx", SaveFormat.Pptx);

Un autre exemple montre la substitution de police pour le rendu lorsqu’elle est inaccessible :




Presentation pres = new Presentation("PresContainsSomeRareFontFont.pptx");

IFontData sourceFont = new FontData("SomeRareFont");

IFontData destFont = new FontData("Arial");

IFontSubstRule fontSubstRule = new FontSubstRule(

sourceFont, destFont, FontSubstCondition.WhenInaccessible);

IFontSubstRuleCollection fontSubstRuleCollection = new FontSubstRuleCollection();

fontSubstRuleCollection.add(fontSubstRule);

pres.getFontsManager().setFontSubstRuleList(fontSubstRuleCollection);

// La police Arial sera utilisée à la place de SomeRareFont lorsqu'elle est inaccessible

pres.getSlides().get_Item(0).getThumbnail(1, 1);