Trabalhar com opções e aparência de documentos do Word

Às vezes, pode ser necessário alterar a aparência de um documento, por exemplo, definir preferências de idioma ou o número de linhas por página.Aspose.Words fornece a capacidade de controlar como o documento será exibido, bem como algumas opções adicionais. Este artigo descreve essas possibilidades.

Definir Opções De Apresentação Do Documento

Você pode controlar como um documento será exibido em Microsoft Word usando a classe ViewOptions. Por exemplo, pode definir um valor de zoom do documento utilizando a propriedade ZoomPercent ou o modo de visualização utilizando a propriedade ViewType.

O exemplo de código a seguir mostra como garantir que um documento seja exibido em 50% quando aberto em Microsoft Word:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java
Document doc = new Document(dataDir + "Document.doc");
doc.getViewOptions().setViewType(ViewType.PAGE_LAYOUT);
doc.getViewOptions().setZoomPercent(50);
doc.save(dataDir + "Document.SetZoom_out.doc");

Definir Opções De Apresentação Da Página

Se pretender definir o número de caracteres por linha, utilize a propriedade CharactersPerLine. Você também pode definir o número de linhas por página para um documento do Word – use a propriedade LinesPerPage para obter ou definir o número de linhas por página na grade do documento.

O exemplo de código a seguir mostra como definir o número de caracteres por linha e o número de linhas por página para um documento Microsoft Word:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java
// The path to the documents directory.
Document doc = new Document(dataDir + "Document.doc");
// Set the layout mode for a section allowing to define the document grid
// behavior
// Note that the Document Grid tab becomes visible in the Page Setup dialog of
// MS Word if any Asian language is defined as editing language.
doc.getFirstSection().getPageSetup().setLayoutMode(SectionLayoutMode.GRID);
// Set the number of characters per line in the document grid.
doc.getFirstSection().getPageSetup().setCharactersPerLine(30);
// Set the number of lines per page in the document grid.
doc.getFirstSection().getPageSetup().setLinesPerPage(10);
// Save the document
doc.save(dataDir + "Document.PageSetup_out.doc");

Definir Preferências De Idioma

Exibir um documento em Microsoft Word depende de quais idiomas são definidos como padrão para este documento. Se nenhum idioma for definido como predefinido, Microsoft Word obtém informações da caixa de diálogo" Definir preferências de idioma do Office", que, por exemplo, pode ser encontrada em" Ficheiro de Opções de arquivo de Opções de idioma " em Microsoft Word 2019.

Com Aspose.Words, Você também pode configurar preferências de idioma usando a classe LanguagePreferences. Observe também que, para a exibição correta do seu documento, é necessário definir a versão Microsoft Word que o processo de carregamento do documento deve corresponder – isso pode ser feito usando a propriedade MswVersion.

O exemplo de código a seguir mostra como adicionar Japonês aos idiomas de edição:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java
// Specify LoadOptions to add Editing Language
LoadOptions loadOptions = new LoadOptions();
loadOptions.getLanguagePreferences().addEditingLanguage(EditingLanguage.JAPANESE);
Document doc = new Document(dataDir + "languagepreferences.docx", loadOptions);
int localeIdFarEast = doc.getStyles().getDefaultFont().getLocaleIdFarEast();
if (localeIdFarEast == (int) EditingLanguage.JAPANESE)
System.out.println("The document either has no any FarEast language set in defaults or it was set to Japanese originally.");
else
System.out.println("The document default FarEast language was set to another than Japanese language originally, so it is not overridden.");

O exemplo de código a seguir mostra como definir o russo como o idioma de edição padrão:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java
// Specify LoadOptions to set Default Editing Language
LoadOptions loadOptions = new LoadOptions();
loadOptions.getLanguagePreferences().setDefaultEditingLanguage(EditingLanguage.RUSSIAN);
Document doc = new Document(dataDir + "languagepreferences.docx", loadOptions);
int localeId = doc.getStyles().getDefaultFont().getLocaleId();
if (localeId == (int) EditingLanguage.RUSSIAN)
System.out.println("The document either has no any language set in defaults or it was set to Russian originally.");
else
System.out.println("The document default language was set to another than Russian language originally, so it is not overridden.");

Otimizar um documento para uma versão específica do Word

O método OptimizeFor permite otimizar o conteúdo do documento, bem como o comportamento padrão Aspose.Words para uma versão específica de Microsoft Word. Pode utilizar este método para evitar que Microsoft Word exiba a faixa de opções “Modo de compatibilidade” aquando do Carregamento do documento. Observe que também pode ser necessário definir a propriedade Compliance como Iso29500_2008_Transitional ou superior.

O exemplo de código a seguir mostra como otimizar o conteúdo do documento para Microsoft Word 2016:

Document doc = new Document(dataDir + "Document.docx");

// Set Word2016 version for document
doc.getCompatibilityOptions().optimizeFor(MsWordVersion.WORD_2016);

// Save the document.
doc.save(dataDir + "output.docx");