Trabajar con Opciones y Apariencia de Documentos de Word
A veces, es posible que deba cambiar la apariencia de un documento, por ejemplo, establecer preferencias de idioma o el número de líneas por página.Aspose.Words proporciona la capacidad de controlar cómo se mostrará el documento, así como algunas opciones adicionales. Este artículo describe tales posibilidades.
Establecer Opciones de Visualización de Documentos
Puede controlar cómo se mostrará un documento en Microsoft Word utilizando la clase ViewOptions. Por ejemplo, puede establecer un valor de zoom de documento utilizando la propiedad ZoomPercent, o el modo de visualización utilizando la propiedad ViewType.
El siguiente ejemplo de código muestra cómo asegurarse de que un documento se muestre al 50% cuando se abre en 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"); |
Establecer Opciones de Visualización de Página
Si desea establecer el número de caracteres por línea, utilice la propiedad CharactersPerLine. También puede establecer el número de líneas por página para un documento de Word; use la propiedad LinesPerPage para obtener o establecer el número de líneas por página en la cuadrícula del documento.
El siguiente ejemplo de código muestra cómo establecer el número de caracteres por línea y el número de líneas por página para un 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"); |
Establecer Preferencias de Idioma
Mostrar un documento en Microsoft Word depende de los idiomas predeterminados para este documento. Si no se establecen idiomas en los valores predeterminados, Microsoft Word toma información del cuadro de diálogo" Establecer preferencias de idioma de Office", que, por ejemplo, se puede encontrar en “Archivo → Opciones → Idioma” en Microsoft Word 2019.
Con Aspose.Words, también puede configurar las preferencias de idioma utilizando la clase LanguagePreferences. También tenga en cuenta que para la visualización correcta de su documento es necesario establecer la versión Microsoft Word que debe coincidir con el proceso de carga del documento; esto se puede hacer usando la propiedad MswVersion.
El siguiente ejemplo de código muestra cómo agregar japonés a los idiomas de edición:
// 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."); |
El siguiente ejemplo de código muestra cómo configurar el ruso como idioma de edición predeterminado:
// 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."); |
Optimizar un Documento para una versión de Word en Particular
El método OptimizeFor permite optimizar el contenido del documento, así como el comportamiento predeterminado de Aspose.Words para una versión particular de Microsoft Word. Puede utilizar este método para evitar que Microsoft Word muestre la cinta de opciones “Modo de compatibilidad” al cargar el documento. Tenga en cuenta que es posible que también deba establecer la propiedad Compliance
en Iso29500_2008_Transitional o superior.
El siguiente ejemplo de código muestra cómo optimizar el contenido del 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");