WOFF(Web Open Font Format)は基本的にTTF(True Type Font)ですが、フォーマット固有の圧縮と追加のXMLメタデータが含まれています。 WOFF2は、WOFFの拡張バージョンです。 WOFFと比較してより多くの圧縮を提供します。 WOFFとWOFF2の両方がWebページで使用されます。一方、TTF(True Type Font)は、すべてのデジタルプラットフォームで正常に機能し、画面上および印刷されたドキュメントで優れた品質を提供します。場合によっては、JavaアプリケーションでプログラムによってTrueTypeフォントをWebフォントに変換する必要があります。この記事では、Javaを使用してTTFをWOFFおよびWOFF2に変換する方法を学習します。
この記事では、次のトピックについて説明します。
TTFをWOFF&WOFF2に変換するJava API
TTFをWOFFに変換するには、Aspose.Font for JavaAPIを使用します。フォントファイル定義を表すFontFileDefinitionクラスを提供します。また、フォントファイルセットの定義を表すFontDefinitionクラスを提供し、名前、タイプなどのフォントの基本的な詳細を提供します。このクラスのOpen()メソッドは、フォントファイルとフォントタイプのFontDefinitionを返します。 FontクラスのSaveToFormat()メソッドを使用して、ロードされたフォントを他の形式に変換できます。さらに、APIを使用すると、サポートされているフォントタイプから情報を読み込んだり、保存したり、抽出したりできます。
APIのJARをダウンロードするか、MavenベースのJavaアプリケーションに次のpom.xml構成を追加してください。
<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>
Javaを使用してTTFをWOFFに変換する
以下の手順に従って、True Typeフォント(TTF)をWeb Open Font Format(WOFF)に簡単に変換できます。
- まず、FileSystemStreamSourceクラスを使用してフォントファイルをロードします。
- 次に、ソースファイルオブジェクトを引数としてFontFileDefinitionクラスのインスタンスを作成します。
- 次に、FontDefinitionクラスオブジェクトを、フォントタイプをTTFとして、FontFileDefinitionオブジェクトで初期化します。
- その後、FontDefinitionオブジェクトを引数としてFont。Open()メソッドを使用してフォントを開きます。
- 最後に、SaveToFormat()メソッドを呼び出して保存します。出力ファイルパスとFontSavingFormatsを引数としてWOFFに取ります。
次のコードサンプルは、Javaを使用してTTFをWOFFに変換する方法を示しています。
// このコード例は、TTFをWOFFに変換する方法を示しています。
// TTFファイルパス
String fontPath = "C:\\Files\\Montserrat-Regular.ttf";
// フォントファイルをロードする
FileSystemStreamSource source = new FileSystemStreamSource(fontPath);
// フォントファイル定義を作成する
FontFileDefinition fileDefinition = new FontFileDefinition(source);
// フォント定義を作成する
FontDefinition fontDefinition = new FontDefinition(FontType.TTF, fileDefinition);
// フォントを開く
Font font = Font.open(fontDefinition);
// WOFF出力パス
String outPath = "C:\\Files\\TtfToWoff_out1.woff";
FileOutputStream outStream = new FileOutputStream(outPath);
// TTFをWOFFに変換する
font.saveToFormat(outStream, FontSavingFormats.WOFF);
Javaを使用してTTFをWOFF2に変換する
WOFF2は、WOFFの更新バージョンです。より多くの圧縮を提供するため、ファイルサイズが小さくなり、最新のブラウザーのパフォーマンスが向上します。前述の手順に従って、TTFをWOFF2に変換することもできます。ただし、最後の手順でFontSavingFormatsをWOFF2として設定する必要があります。
次のコードサンプルは、Javaを使用してTTFをWOFF2に変換する方法を示しています。
// このコード例は、TTFをWOFF2に変換する方法を示しています。
// TTFファイルパス
String fontPath = "C:\\Files\\Montserrat-Regular.ttf";
// フォントファイルをロードする
FileSystemStreamSource source = new FileSystemStreamSource(fontPath);
// フォントファイル定義を作成する
FontFileDefinition fileDefinition = new FontFileDefinition(source);
// フォント定義を作成する
FontDefinition fontDefinition = new FontDefinition(FontType.TTF, fileDefinition);
// フォントを開く
Font font = Font.open(fontDefinition);
// WOFF出力パス
String outPath = "C:\\Files\\TtfToWoff_out1.woff2";
FileOutputStream outStream = new FileOutputStream(outPath);
// TTFをWOFFに変換する
font.saveToFormat(outStream, FontSavingFormats.WOFF2);
無料ライセンスを取得する
無料の一時ライセンスを取得して、評価の制限なしにライブラリを試すことができます。
結論
この記事では、JavaでTrueTypeフォントをWebOpenFontに変換する方法を学びました。プログラムでTTFをWOFF2として保存する方法も見てきました。さらに、ドキュメントを使用して、Aspose.Font forJavaAPIの詳細を学ぶことができます。ご不明な点がございましたら、フォーラムまでお気軽にお問い合わせください。