API Pública e Alterações Incompatíveis Retroativas no Aspose.Slides para Java 15.1.0

Alterações da API Pública

A funcionalidade de substituição de fontes foi adicionada

A possibilidade de substituir fontes globalmente em toda a apresentação e temporariamente para renderização foi adicionada.

Foi introduzido o novo método getFontsManager() da classe Presentation. A classe FontsManager possui os seguintes membros:

IFontSubstRuleCollection getFontSubstRuleList() método

Esta é a coleção de instâncias IFontSubstRule usadas para substituir fontes durante a renderização. IFontSubstRule possui os métodos getSourceFont() e getDestFont() que implementam a interface IFontData e o método getReplaceFontCondition() que permite escolher a condição de substituição (“WhenInaccessible” ou “Always”).

IFontData[] getFonts() método pode ser usado para recuperar todas as fontes usadas na apresentação atual.

replaceFont(…) métodos podem ser usados para substituir persistentemente uma fonte em uma apresentação.

O exemplo a seguir mostra como substituir uma fonte em uma apresentação:


 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("PresContainsTimesNoewRomanFont.pptx", SaveFormat.Pptx);

Outro exemplo mostra a substituição de fontes para renderização quando a fonte está inacessível:




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);

// A fonte Arial será usada em vez da SomeRareFont quando inacessível

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