Especificar fontes padrão de apresentação em Java
Visão geral
Aspose.Slides permite especificar fontes padrão que são usadas quando uma apresentação é renderizada. Isso é útil ao gerar miniaturas de slides ou exportar uma apresentação para formatos como PDF e XPS. As fontes padrão são configuradas através de LoadOptions antes que a apresentação seja carregada.
O método setDefaultRegularFont define a fonte padrão para texto comum, enquanto setDefaultAsianFont define a fonte padrão para texto asiático. Após definir essas opções, a apresentação pode ser carregada e renderizada usando as fontes especificadas.
Usar fontes padrão para renderizar uma apresentação
Aspose.Slides permite definir a fonte padrão ao renderizar a apresentação para PDF, XPS ou miniaturas. Este artigo mostra como definir DefaultRegularFont e DefaultAsianFont para uso como fontes padrão. Siga os passos abaixo para carregar fontes de diretórios externos usando a API Aspose.Slides for Java:
- Crie uma instância de LoadOptions.
- Defina o DefaultRegularFont para a fonte desejada. No exemplo a seguir, foi usado Wingdings.
- Defina o DefaultAsianFont para a fonte desejada. Usei Wingdings no exemplo a seguir.
- Carregue a apresentação usando Presentation e definindo as opções de carregamento.
- Agora, gere a miniatura do slide, PDF e XPS para verificar os resultados.
A implementação acima é apresentada a seguir.
// Use opções de carregamento para definir as fontes padrão regular e asiática
LoadOptions loadOptions = new LoadOptions(LoadFormat.Auto);
loadOptions.setDefaultRegularFont("Wingdings");
loadOptions.setDefaultAsianFont("Wingdings");
// Carregar a apresentação
Presentation pres = new Presentation("DefaultFonts.pptx", loadOptions);
try {
// Gerar miniatura do slide
IImage slideImage = pres.getSlides().get_Item(0).getImage(1, 1);
try {
// salvar a imagem no disco.
slideImage.save("output.png", ImageFormat.Png);
} finally {
if (slideImage != null) slideImage.dispose();
}
// Gerar PDF
pres.save("output_out.pdf", SaveFormat.Pdf);
// Gerar XPS
pres.save("output_out.xps", SaveFormat.Xps);
} catch (IOException e) {
} finally {
if (pres != null) pres.dispose();
}
FAQ
O que exatamente o DefaultRegularFont e o DefaultAsianFont afetam — apenas exportação ou também miniaturas, PDF, XPS, HTML e SVG?
Eles participam do pipeline de renderização para todas as saídas suportadas. Isso inclui miniaturas de slides, PDF, XPS, imagens raster, HTML e SVG, porque o Aspose.Slides usa a mesma lógica de layout e resolução de glifos nesses destinos.
As fontes padrão são aplicadas ao simplesmente ler e salvar um PPTX sem renderização?
Não. As fontes padrão importam quando o texto precisa ser medido e desenhado. Uma simples abertura e salvamento de uma apresentação não altera as execuções de fonte armazenadas nem a estrutura do arquivo. As fontes padrão entram em ação durante operações que renderizam ou reformatam o texto.
Se eu adicionar minhas próprias pastas de fontes ou fornecer fontes da memória, elas serão consideradas ao escolher as fontes padrão?
Sim. Fontes personalizadas ampliam o catálogo de famílias e glifos disponíveis que o mecanismo pode usar. As fontes padrão e quaisquer regras de fallback serão resolvidas primeiro contra essas fontes, proporcionando cobertura mais confiável em servidores e contêineres.
As fontes padrão afetarão métricas de texto (kerning, avanços) e, portanto, quebras de linha e envelopamento?
Sim. Alterar a fonte modifica as métricas dos glifos e pode mudar quebras de linha, envelopamento e paginação durante a renderização. Para estabilidade de layout, incorpore as fontes originais ou selecione famílias padrão e de fallback compatíveis metricamente.
Existe algum motivo para definir fontes padrão se todas as fontes usadas na apresentação estiverem incorporadas?
Frequentemente não é necessário, pois fontes incorporadas já garantem aparência consistente. As fontes padrão ainda ajudam como rede de segurança para caracteres não cobertos pelo subconjunto incorporado ou quando um arquivo mistura texto incorporado e não incorporado.