Включить функции OpenType
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"); |