Police PowerPoint personnalisée en Java

Charger des Polices Personnalisées

Aspose.Slides vous permet de charger des polices qui sont affichées dans des présentations sans avoir à installer ces polices. Les polices sont chargées à partir d’un répertoire personnalisé.

  1. Créez une instance de la classe FontsLoader et appelez la méthode loadExternalFonts.
  2. Chargez la présentation qui sera rendue.
  3. 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é
FontsLoader.loadExternalFonts(folders);

// Effectuez quelques travaux et réalisez le rendu de la présentation/de la diapositive
Presentation pres = new Presentation("DefaultFonts.pptx");
try {
    pres.save("NewFonts_out.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();

    // Vide 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 les 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 les 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 & global\fonts et leurs sous-dossiers sont disponibles pour la présentation
} finally {
    if (pres != null) pres.dispose();
}

Gérer les Polices Externes

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 de 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();
}