OpenType機能を有効にする
OpenTypeはフォント形式で、PostScriptやTrueTypeと比較して国際的な言語や書記体系をよりよくサポートするために導入されました。 OpenTypeのレイアウト機能は、一般にOpenType機能として知られています。 Aspose.Words.シェイピング。HarfBuzzパッケージはHarfBuzz
テキスト整形エンジンを使用してAspose.WordsのOpenType機能をサポートします。
Aspose.Wordsは、外部から提供されるテキストシェイパーオブジェクトを使用できます。 テキストシェイパーは、フォントを表し、テキストの整形情報を計算します。 ドキュメントは通常、複数のフォントを参照するため、テキストシェイパーファクトリが必要です。 このパッケージにはAspose.Wordsで利用されるテキストシェイパーファクトリの実装が含まれています。レイアウト。LayoutOptions.TextShaperFactoryプロパティ。
一般的なアプリケーションでは、テキスト シェイパー ファクトリの単一のインスタンスがすべてのドキュメント インスタンス間で共有されます。テキスト シェイパーが作成されるたびに、フォント ファイルにアクセスします。フォント ファイルの解析はコストのかかる操作であるため、キャッシュすることをお勧めします。Aspose.Words は、テキスト シェイパー ファクトリ実装をラップし、ラップされたファクトリによって返されるテキスト シェイパー インスタンスをキャッシュする BasicTextShaperCache クラスを実装します。
次のコード例は、OpenType機能のサポートを有効にする方法を示しています。
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getDataDir(OpenTypeFeatures.class); | |
// Open a document | |
Document doc = new Document(dataDir + "OpenType.Document.docx"); | |
// When text shaper factory is set, layout starts to use OpenType features. | |
// An Instance property returns static BasicTextShaperCache object wrapping HarfBuzzTextShaperFactory | |
doc.getLayoutOptions().setTextShaperFactory(com.aspose.words.shaping.harfbuzz.HarfBuzzTextShaperFactory.getInstance()); | |
// Render the document to PDF format | |
doc.save(dataDir + "OpenType.Document.pdf"); |