Включить функции OpenType

Contents
[ ]

OpenType - это формат шрифта, введенный для обеспечения лучшей поддержки международных языков и систем письма по сравнению с PostScript и TrueType. Особенности компоновки OpenType широко известны как функции OpenType. Aspose.Words.Формирование.пакет HarfBuzz обеспечивает поддержку OpenType функций в Aspose.Words с использованием механизма формирования текста HarfBuzz.

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");