Especificar fontes padrão da apresentação em PHP
Visão geral
Aspose.Slides permite especificar as fontes padrão que são usadas quando uma apresentação é renderizada. Isso é útil ao gerar miniaturas de slides ou ao exportar uma apresentação para formatos como PDF e XPS. As fontes padrão são configuradas através de LoadOptions antes de a apresentação ser 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 essas opções serem definidas, 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 para renderizar a apresentação em PDF, XPS ou miniaturas. Este artigo mostra como definir DefaultRegularFont e DefaultAsianFont como fontes padrão. Siga os passos abaixo para carregar fontes de diretórios externos usando Aspose.Slides para PHP via API Java:
- Crie uma instância de LoadOptions.
- Set the DefaultRegularFont para a fonte desejada. No exemplo a seguir, usei Wingdings.
- Set the DefaultAsianFont para a fonte desejada. Usei Wingdings no exemplo a seguir.
- Carregue a apresentação usando Presentation e definições de load options.
- Agora, gere a miniatura do slide, o PDF e o XPS para verificar os resultados.
A implementação acima é mostrada a seguir.
# Use opções de carregamento para definir as fontes padrão regular e asiática
$loadOptions = new LoadOptions(LoadFormat::Auto);
$loadOptions->setDefaultRegularFont("Wingdings");
$loadOptions->setDefaultAsianFont("Wingdings");
# Carregue a apresentação
$pres = new Presentation("DefaultFonts.pptx", $loadOptions);
try {
# Gere a miniatura do slide
$slideImage = $pres->getSlides()->get_Item(0)->getImage(1, 1);
try {
# salve a imagem no disco.
$slideImage->save("output.png", ImageFormat::Png);
} finally {
if (!java_is_null($slideImage)) {
$slideImage->dispose();
}
}
# Gerar PDF
$pres->save("output_out.pdf", SaveFormat::Pdf);
# Gerar XPS
$pres->save("output_out.xps", SaveFormat::Xps);
} catch (JavaException $e) {
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
Perguntas frequentes
O que exatamente afetam DefaultRegularFont e DefaultAsianFont — somente 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 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 são relevantes 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 a partir da memória, elas serão consideradas ao escolher as fontes padrão?
Sim. Fontes personalizadas expandem 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 contra essas fontes primeiro, proporcionando maior cobertura em servidores e contêineres.
As fontes padrão afetam métricas de texto (kerning, avanços) e, portanto, quebras de linha e envolvimento?
Sim. Alterar a fonte modifica as métricas dos glifos e pode mudar quebras de linha, envolvimento 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.
Há alguma utilidade em definir fontes padrão se todas as fontes usadas na apresentação estão incorporadas?
Frequentemente não é necessário, pois fonts incorporados 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.