Otimize a Substituição de Fontes em Apresentações Usando PHP
Visão geral
Aspose.Slides permite substituir uma fonte por outra em toda a apresentação. Quando uma fonte é substituída, todas as instâncias da fonte original são alteradas para a nova fonte.
Para realizar a substituição de fontes, carregue a apresentação, defina a fonte de origem e a fonte de substituição, chame o método de substituição de fontes e salve a apresentação modificada como um arquivo PPTX. Essa abordagem é útil quando você deseja trocar intencionalmente uma família de fontes por outra em toda a apresentação.
Substituir fontes
Se mudar de ideia sobre o uso de uma fonte, você pode substituir essa fonte por outra. Todas as instâncias da fonte antiga serão substituídas pela nova fonte.
Aspose.Slides permite substituir uma fonte desta forma:
- Carregue a apresentação relevante.
- Carregue a fonte que será substituída.
- Carregue a nova fonte.
- Substitua a fonte.
- Salve a apresentação modificada como um arquivo PPTX.
Este código PHP demonstra a substituição de fontes:
# Carrega uma apresentação
$pres = new Presentation("Fonts.pptx");
try {
# Carrega a fonte de origem que será substituída
$sourceFont = new FontData("Arial");
# Carrega a nova fonte
$destFont = new FontData("Times New Roman");
# Substitui as fontes
$pres->getFontsManager()->replaceFont($sourceFont, $destFont);
# Salva a apresentação
$pres->save("UpdatedFont_out.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
Note
Para definir regras que determinam o que acontece em determinadas condições (por exemplo, se uma fonte não puder ser acessada), veja Font Substitution.FAQ
Qual é a diferença entre “font replacement”, “font substitution” e “fallback fonts”?
A substituição é uma troca intencional de uma família por outra em todo o documento. Substitution é uma regra como “se a fonte não estiver disponível, use X”. Fallback é aplicado de forma cirúrgica para glifos ausentes individuais quando a fonte base está instalada, mas não contém os caracteres necessários.
A substituição se aplica a slides mestre, layouts, notas e comentários?
Sim. A substituição afeta todos os objetos da apresentação que utilizam a fonte original, incluindo slides mestre e notas; comentários também fazem parte do documento e são levados em conta pelo mecanismo de fontes.
A fonte será alterada dentro de objetos OLE incorporados (por exemplo, Excel)?
Não. OLE content é controlado pela sua própria aplicação. A substituição na apresentação não reformata os dados internos do OLE; eles podem ser exibidos como uma imagem ou como conteúdo editável externamente.
Posso substituir uma fonte apenas em parte da apresentação (por slides ou regiões)?
É possível fazer substituição direcionada se você mudar a fonte no nível dos objetos/faixas necessários, em vez de aplicar uma substituição global a todo o documento. A lógica geral de seleção de fontes durante a renderização permanece a mesma.
Como posso determinar com antecedência quais fontes a apresentação utiliza?
Use o font manager da apresentação: ele fornece uma lista das families in use e informações sobre substitutions/“unknown” fonts, o que ajuda a planejar a substituição.
A substituição de fontes funciona ao converter para PDF/imagens?
Sim. Durante a exportação, o Aspose.Slides aplica a mesma font selection/substitution sequence, portanto uma substituição feita previamente será respeitada durante a conversão.
Preciso instalar a fonte alvo no sistema ou posso anexar uma pasta de fontes?
A instalação não é necessária: a biblioteca permite loading external fonts a partir de pastas do usuário para uso durante rendering and export.
A substituição corrigirá o “tofu” (quadrados) em vez de caracteres?
Só se a fonte alvo realmente contiver os glifos necessários. Caso contrário, configure fallback para cobrir os caracteres ausentes.