Conversion de polices. Détails avancés | Java

Dans certains cas, il est judicieux de lire/modifier les données de police converties avant de sauvegarder la police.

La méthode com.aspose.font.Font.convert(FontType fontType) a été conçue pour de tels cas. Cette méthode convertit une police dans le type spécifié et renvoie l’objet hérité de la classe com.aspose.font.Font qui correspond à la valeur FontType, passée dans la méthode convert().

Le tableau suivant montre une carte de cohérence entre les valeurs FontType et les objets, héritée de la classe de base com.aspose.font.Font.

Type de policeObjet de police
TTFcom.aspose.font.TtfFont
Type1com.aspose.font.Type1Font
CFFcom.aspose.font.CffFont
OTFcom.aspose.font.TtfFont

Utilisez l’objet de police résultant pour accéder/modifier les propriétés de la police avant d’enregistrer la police résultante ou au lieu d’enregistrer la police résultante.

À l’heure actuelle, la méthode convert() prend en charge la conversion uniquement au format de police TrueType (FontType.TTF), elle renvoie donc toujours l’objet de type TtfFont suite à une conversion indépendamment de la police source utilisée.

L’extrait de code suivant charge la police CFF CenturyGothic à partir du disque, la convertit au format TrueType et change le nom de la police convertie en “CenturyGothic_Converted”.

Tout d’abord, utilisez les instructions suivantes :

 1 
 2    package com.aspose.font;
 3
 4    import java.io.FileOutputStream;
 5    import java.io.IOException;
 6    import java.nio.file.Files;
 7    import java.nio.file.Paths;
 8
 9    import com.aspose.font.ByteContentStreamSource;
10    import com.aspose.font.FileSystemStreamSource;
11    import com.aspose.font.Font;
12    import com.aspose.font.FontDefinition;
13    import com.aspose.font.FontFileDefinition;
14    import com.aspose.font.FontSavingFormats;
15    import com.aspose.font.FontType;
16    import com.aspose.font.TtfFont;

Effectuez les actions suivantes :

  1. Ouvrez la police.
  2. Convertissez la police au format « TrueType ».
  3. Modifiez le nom de la police convertie.
  4. Informez les paramètres de sortie.
  5. Enregistrez le résultat avec le nom qui vient d’être modifié.
 1 
 2    // Open cff font
 3    String fontPath = Paths.get(getDataDir(), "CenturyGothic.cff").toString();
 4    FontDefinition fontDefinition = new FontDefinition(FontType.CFF, new FontFileDefinition("cff", new FileSystemStreamSource(fontPath)));
 5    Font font = Font.open(fontDefinition);
 6
 7    //Convert font into TrueType format and cast font returned to com.aspose.font.TtfFont
 8    Font destFont = (TtfFont)font.convert(FontType.TTF);
 9
10    //Change name of converted font
11    destFont.setFontName("CenturyGothic_Converted");		
12		
13    // Output Ttf settings
14    String outPath = Paths.get(getOutputDir(), "CffToTtf_out.ttf").toString();
15		
16    //Save the resultant font with the changed font name
17    destFont.save(outPath);	

La gamme complète d’exemples d’utilisation d’Aspose.Font pour Java est placée dans la solution Aspose.Font.Examples.sln, dans le dossier java-examples du référentiel GitHub Aspose.Font Documentation.

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.