Renderizar apresentações com fontes de fallback em Java
Contents
[
Hide
]
Visão geral
Aspose.Slides permite renderizar apresentações usando regras de fallback de fontes. Este artigo mostra como criar uma coleção de regras de fallback de fontes, modificar suas regras removendo ou adicionando fontes de fallback e atribuir a coleção usando o método FontsManager.setFontFallBackRulesCollection.
Depois que a coleção de regras de fallback de fontes é atribuída ao FontsManager da apresentação, as regras são aplicadas durante operações como salvar, renderizar e converter a apresentação. O exemplo demonstra como usar as regras configuradas ao renderizar uma miniatura de slide e salvá‑la como imagem PNG.
Renderizar um slide usando regras de fallback de fontes
O exemplo a seguir inclui estas etapas:
- Nós criamos a coleção de regras de fallback de fontes.
- Remover uma regra de fallback de fonte e addFallBackFonts a outra regra.
- Defina a coleção de regras em getFontsManager.getFontFallBackRulesCollection método.
- Com o método Presentation.save podemos salvar a apresentação no mesmo formato ou em outro. Após a coleção de regras de fallback ser definida em FontsManager, essas regras são aplicadas durante qualquer operação sobre a apresentação: salvar, renderizar, converter etc.
// Criar nova instância de uma coleção de regras
IFontFallBackRulesCollection rulesList = new FontFallBackRulesCollection();
// criar um número de regras
rulesList.add(new FontFallBackRule(0x400, 0x4FF, "Times New Roman"));
for (IFontFallBackRule fallBackRule : rulesList)
{
//Tentando remover a fonte de fallback "Tahoma" das regras carregadas
fallBackRule.remove("Tahoma");
//E atualizar as regras para o intervalo especificado
if ((fallBackRule.getRangeEndIndex() >= 0x4000) && (fallBackRule.getRangeStartIndex() < 0x5000))
fallBackRule.addFallBackFonts("Verdana");
}
//Também podemos remover quaisquer regras existentes da lista
if (rulesList.size() > 0)
rulesList.remove(rulesList.get_Item(0));
Presentation pres = new Presentation("input.pptx");
try {
//Atribuindo uma lista de regras preparada para uso
pres.getFontsManager().setFontFallBackRulesCollection(rulesList);
// Renderizando a miniatura usando a coleção de regras inicializada e salvando em JPEG
IImage slideImage = pres.getSlides().get_Item(0).getImage(1f, 1f);
//Salvar a imagem no disco no formato JPEG
try {
slideImage.save("Slide_0.jpg", ImageFormat.Jpeg);
} finally {
if (slideImage != null) slideImage.dispose();
}
} finally {
if (pres != null) pres.dispose();
}
Leia mais sobre como Converter PPT e PPTX para JPG em Java.