Renderizar apresentações com fontes de fallback no .NET
Contents
[
Hide
]
Visão geral
O Aspose.Slides permite que você renderize apresentações usando regras de fontes de fallback. Este artigo mostra como criar uma coleção de regras de fontes de fallback, modificar suas regras removendo ou adicionando fontes de fallback e atribuir a coleção à propriedade FontsManager.FontFallBackRulesCollection.
Uma vez que a coleção de regras de fontes de fallback é 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 a miniatura de um slide e salvá‑la como imagem PNG.
Renderizar um Slide Usando Regras de Fonte Fallback
- Criamos a coleção de regras de fonte fallback.
- Remove() remove uma regra de fonte fallback e AddFallBackFonts() adiciona fontes de fallback a outra regra.
- Define a coleção de regras na propriedade FontsManager.FontFallBackRulesCollection.
- Com o método Presentation.Save() podemos salvar a apresentação no mesmo formato ou em outro formato. Após a coleção de regras de fontes de fallback ser definida no FontsManager, essas regras são aplicadas durante quaisquer operações 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"));
//rulesList.Add(new FontFallBackRule(...));
foreach (IFontFallBackRule fallBackRule in rulesList)
{
//Tentando remover a fonte FallBack "Tahoma" das regras carregadas
fallBackRule.Remove("Tahoma");
//E atualizar as regras para o intervalo especificado
if ((fallBackRule.RangeEndIndex >= 0x4000) && (fallBackRule.RangeStartIndex < 0x5000))
fallBackRule.AddFallBackFonts("Verdana");
}
//Também podemos remover quaisquer regras existentes da lista
if (rulesList.Count > 0)
rulesList.Remove(rulesList[0]);
using (Presentation pres = new Presentation("input.pptx"))
{
//Atribuindo uma lista de regras preparada para uso
pres.FontsManager.FontFallBackRulesCollection = rulesList;
// Renderizando miniatura usando a coleção de regras inicializada e salvando como PNG
using (IImage image = pres.Slides[0].GetImage(1f, 1f))
{
image.Save("Slide_0.png", ImageFormat.Png);
}
}
Leia mais sobre Salvar e Conversão em Apresentação.