OpenType 機能を有効にする

Contents
[ ]

OpenType は、PostScript や TrueType と比較して、国際言語および書記体系のサポートを向上させるために導入されたフォント形式です。 OpenType のレイアウト機能は、一般に OpenType 機能として知られています。 Aspose.Words.Shaping.HarfBuzz パッケージは、HarfBuzz テキスト整形エンジンを使用して Aspose.Words の OpenType 機能のサポートを提供します。

Aspose.Words は、外部から提供されるテキスト シェーパー オブジェクトを使用できます。テキスト シェイパーはフォントを表し、テキストの整形情報を計算します。通常、ドキュメントは複数のフォントを参照するため、テキスト シェーパ ファクトリが必要になります。このパッケージには、Aspose.Words.Layout.LayoutOptions.TextShaperFactory プロパティによって利用されるテキスト シェーパー ファクトリの実装が含まれています。

一般的なアプリケーションでは、テキスト シェーパー ファクトリの単一インスタンスがすべてのドキュメント インスタンスで共有されます。テキスト シェーパーが作成されるたびに、フォント ファイルがアクセスされます。フォント ファイルの解析はコストがかかる操作であるため、キャッシュすることをお勧めします。 Aspose.Words は、テキスト シェイパー ファクトリ実装をラップし、ラップされたファクトリによって返されたテキスト シェイパー インスタンスをキャッシュする BasicTextShaperCache クラスを実装します。

次のコード例は、OpenType 機能のサポートを有効にする方法を示しています。

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET
// The path to the documents directory.
string dataDir = RunExamples.GetDataDir_WorkingWithDocument();
// 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.LayoutOptions.TextShaperFactory = Shaping.HarfBuzz.HarfBuzzTextShaperFactory.Instance;
// Render the document to PDF format
doc.Save(dataDir + "OpenType.Document.pdf");