Convertissez TTF en WOFF et WOFF2 en utilisant Java.

WOFF (Web Open Font Format) est essentiellement une TTF (True Type Font) mais il contient une compression spécifique au format et des métadonnées XML supplémentaires. WOFF2 est une version étendue de WOFF. Il offre plus de compression que WOFF. WOFF et WOFF2 sont utilisés sur les pages Web. D’autre part, TTF (True Type Font) fonctionne bien sur toutes les plateformes numériques et offre une excellente qualité à l’écran et dans les documents imprimés. Dans certains cas, nous devrons peut-être convertir par programmation des polices TrueType en polices Web dans des applications Java. Dans cet article, nous allons apprendre à convertir TTF en WOFF et WOFF2 en utilisant Java.

Les sujets suivants seront traités dans cet article :

API Java pour convertir TTF en WOFF et WOFF2

Pour convertir TTF en WOFF, nous utiliserons l’API Aspose.Font for Java. Il fournit la classe FontFileDefinition qui représente la définition du fichier de police. Il fournit également la classe FontDefinition qui représente la définition du jeu de fichiers de police et fournit des détails de base sur la police, tels que le nom, le type, etc. La méthode Open() de cette classe renvoie la FontDefinition pour le fichier de police et le type de police. Nous pouvons convertir la police chargée dans d’autres formats en utilisant la méthode SaveToFormat() de la classe Font. De plus, l’API permet de charger, d’enregistrer et d’extraire des informations à partir de types de polices pris en charge.

Veuillez soit télécharger le JAR de l’API ou ajouter la configuration pom.xml suivante dans une application Java basée sur Maven.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-font</artifactId>
    <version>21.12</version>
    <type>pom</type>
</dependency>

Convertir TTF en WOFF en utilisant Java

Nous pouvons facilement convertir les polices True Type (TTF) en Web Open Font Format (WOFF) en suivant les étapes ci-dessous :

  • Tout d’abord, chargez le fichier de police à l’aide de la classe FileSystemStreamSource.
  • Ensuite, créez une instance de la classe FontFileDefinition avec l’objet de fichier source comme argument.
  • Ensuite, initialisez l’objet de classe FontDefinition avec le type de police comme objet TTF et FontFileDefinition.
  • Après cela, ouvrez la police en utilisant la méthode Font.Open() avec l’objet FontDefinition comme argument.
  • Enfin, appelez la méthode SaveToFormat() pour l’enregistrer. Il prend le chemin du fichier de sortie et FontSavingFormats vers WOFF comme arguments.

L’exemple de code suivant montre comment convertir TTF en WOFF à l’aide de Java.

// Cet exemple de code montre comment convertir TTF en WOFF.
// Chemin du fichier TTF
String fontPath = "C:\\Files\\Montserrat-Regular.ttf";

// Charger le fichier de police
FileSystemStreamSource source = new FileSystemStreamSource(fontPath);

// Créer une définition de fichier de police
FontFileDefinition fileDefinition = new FontFileDefinition(source);

// Créer une définition de police
FontDefinition fontDefinition = new FontDefinition(FontType.TTF, fileDefinition);

// Ouvrir la police
Font font = Font.open(fontDefinition);

// Chemin de sortie WOFF
String outPath = "C:\\Files\\TtfToWoff_out1.woff";
FileOutputStream outStream = new FileOutputStream(outPath);

// Convertir TTF en WOFF
font.saveToFormat(outStream, FontSavingFormats.WOFF);

Convertir TTF en WOFF2 en utilisant Java

WOFF2 est une version mise à jour de WOFF. Il offre plus de compression grâce à sa taille de fichier plus petite et offre de meilleures performances pour les navigateurs modernes. Nous pouvons également convertir TTF en WOFF2 en suivant les étapes mentionnées précédemment. Cependant, nous avons juste besoin de définir FontSavingFormats sur WOFF2 à la dernière étape.

L’exemple de code suivant montre comment convertir TTF en WOFF2 à l’aide de Java.

// Cet exemple de code montre comment convertir TTF en WOFF2.
// Chemin du fichier TTF
String fontPath = "C:\\Files\\Montserrat-Regular.ttf";

// Charger le fichier de police
FileSystemStreamSource source = new FileSystemStreamSource(fontPath);

// Créer une définition de fichier de police
FontFileDefinition fileDefinition = new FontFileDefinition(source);

// Créer une définition de police
FontDefinition fontDefinition = new FontDefinition(FontType.TTF, fileDefinition);

// Ouvrir la police
Font font = Font.open(fontDefinition);

// Chemin de sortie WOFF
String outPath = "C:\\Files\\TtfToWoff_out1.woff2";
FileOutputStream outStream = new FileOutputStream(outPath);

// Convertir TTF en WOFF
font.saveToFormat(outStream, FontSavingFormats.WOFF2);

Obtenez une licence gratuite

Vous pouvez obtenir une licence temporaire gratuite pour essayer la bibliothèque sans limitation d’évaluation.

Conclusion

Dans cet article, nous avons appris à convertir les polices True Type en polices Web Open Fonts en Java. Nous avons également vu comment enregistrer TTF en tant que WOFF2 par programme. En outre, vous pouvez en savoir plus sur l’API Aspose.Font for Java en utilisant la documentation. En cas d’ambiguïté, n’hésitez pas à nous contacter sur le forum.

Voir également