Police PowerPoint personnalisée en Java
Aspose Slides vous permet de charger ces polices en utilisant la méthode loadExternalFonts :
Charger des polices personnalisées
Aspose.Slides vous permet de charger des polices qui sont rendues dans les présentations sans avoir à installer ces polices. Les polices sont chargées à partir d’un répertoire personnalisé.
- Créez une instance de la classe FontsLoader et appelez la méthode loadExternalFonts.
- Chargez la présentation qui sera rendue.
- Videz le cache dans la classe FontsLoader.
Ce code Java démontre le processus de chargement des polices :
// Dossiers pour chercher des polices
String[] folders = new String[] { externalFontsDir };
// Charge les polices du répertoire de polices personnalisées
FontsLoader.loadExternalFonts(folders);
// Effectue des travaux et rend la présentation/le diapositive
Presentation pres = new Presentation("DefaultFonts.pptx");
try {
pres.save("NewFonts_out.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
// Vider le cache des polices
FontsLoader.clearCache();
}
Obtenir le dossier des polices personnalisées
Aspose.Slides fournit la méthode getFontFolders pour vous permettre de trouver des dossiers de polices. Cette méthode retourne les dossiers ajoutés via la méthode LoadExternalFonts
et les dossiers de polices système.
Ce code Java vous montre comment utiliser getFontFolders:
// Cette ligne affiche les dossiers où les fichiers de polices sont recherchés.
// Ce sont des dossiers ajoutés via la méthode LoadExternalFonts et des dossiers de polices système.
String[] fontFolders = FontsLoader.getFontFolders();
Spécifier les polices personnalisées utilisées avec la présentation
Aspose.Slides fournit la propriété setDocumentLevelFontSources pour vous permettre de spécifier des polices externes qui seront utilisées avec la présentation.
Ce code Java vous montre comment utiliser la propriété setDocumentLevelFontSources :
byte[] memoryFont1 = Files.readAllBytes("customfonts/CustomFont1.ttf");
byte[] memoryFont2 = Files.readAllBytes("customfonts/CustomFont2.ttf");
LoadOptions loadOptions = new LoadOptions();
loadOptions.getDocumentLevelFontSources().setFontFolders(new String[] { "assets/fonts", "global/fonts" });
loadOptions.getDocumentLevelFontSources().setMemoryFonts(new byte[][] { memoryFont1, memoryFont2 });
Presentation pres = new Presentation("MyPresentation.pptx", loadOptions);
try {
// Travaillez avec la présentation
// CustomFont1, CustomFont2, et les polices des dossiers assets\fonts et global\fonts et leurs sous-dossiers sont disponibles pour la présentation
} finally {
if (pres != null) pres.dispose();
}
Gérer les polices de manière externe
Aspose.Slides fournit la méthode loadExternalFont(byte[] data) pour vous permettre de charger des polices externes à partir de données binaires.
Ce code Java démontre le processus de chargement des polices à partir d’un tableau de bytes :
FontsLoader.loadExternalFont(Files.readAllBytes(Paths.get("ARIALN.TTF")));
FontsLoader.loadExternalFont(Files.readAllBytes(Paths.get("ARIALNBI.TTF")));
FontsLoader.loadExternalFont(Files.readAllBytes(Paths.get("ARIALNI.TTF")));
try
{
Presentation pres = new Presentation("");
try {
// police externe chargée pendant la durée de vie de la présentation
} finally {
}
}
finally
{
FontsLoader.clearCache();
}