Activar OpenType Funcionalidades
OpenType é um formato de fonte, introduzido para fornecer melhor suporte para idiomas internacionais e sistemas de escrita em comparação com PostScript e TrueType. Os recursos de layout de OpenType são comumente conhecidos como recursos OpenType. Aspose.Words.Moldar.O pacote HarfBuzz fornece suporte para OpenType recursos em Aspose.Words usando o mecanismo de modelagem de texto HarfBuzz
.
Aspose.Words é capaz de utilizar objectos modeladores de texto fornecidos externamente. Um modelador de texto representa uma fonte e calcula as informações de modelagem de um texto. Um documento normalmente se refere a várias fontes, portanto, uma fábrica de Modeladores de texto é necessária. Este pacote contém uma implementação de uma fábrica de Modeladores de texto utilizada por Aspose.Words.Disposição.LayoutOptions.TextShaperFactory propriedade.
Em um aplicativo típico, uma única instância de uma fábrica de Modeladores de texto é compartilhada entre todas as instâncias de documentos. Sempre que um modelador de texto é criado, um arquivo de fonte é acessado. Analisar um arquivo de fonte é uma operação cara, portanto, o armazenamento em cache é recomendado. Aspose.Words implementa a classe BasicTextShaperCache que envolve a implementação do Text shaper factory e armazena em cache as instâncias do Text shaper retornadas pela fábrica encapsulada.
O exemplo de código a seguir mostra como ativar o Suporte de recursos 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"); |