Trabajando con la Configuración del Documento

Trabajando con la Configuración del Documento

Trabajando con la configuración del documento

Más allá del contenido, un documento de Word lleva configuraciones a nivel de aplicación – interruptores de compatibilidad heredados, preferencias de guionado, la configuración de combinación de correspondencia almacenada, opciones de vista y estado de protección contra escritura. Aspose.Words FOSS para .NET expone estos a través del Aspose.Words.Settings espacio de nombres y un puñado de propiedades en Document. Esta página cubre cada grupo de configuraciones y lo que controla y lo que no controla.


Opciones de compatibilidad

Document.CompatibilityOptions es una instancia de CompatibilityOptions que contiene docenas de conmutadores booleanos que reproducen comportamientos específicos de diseño y espaciado de versiones antiguas de Word — por ejemplo GrowAutofit, UseWord2010TableStyleRules, UseWord2002TableStyleRules, AdjustLineHeightInTable, AlignTablesRowByRow, NoExtraLineSpacing, SuppressSpacingAtTopOfPage, SpacingInWholePoints, UseFELayout y BalanceSingleByteDoubleByteWidth. Establece directamente las propiedades que necesites para coincidir con las particularidades de renderizado de una versión específica de Word en las herramientas posteriores que leen el documento.


Preferencias de guionado

Document.HyphenationOptions es una instancia de HyphenationOptions (AutoHyphenation, ConsecutiveHyphenLimit, HyphenateCaps, HyphenationZone) que almacena las preferencias de guionado de Word para el documento. Estas propiedades realizan un viaje de ida y vuelta de la solicitud; debido a que esta edición no incluye el motor de maquetación, Aspose.Words FOSS no calcula por sí mismo los cortes de guionado — Word los aplica al abrir y paginar el archivo.


Configuración de combinación de correspondencia

Document.MailMergeSettings es una instancia MailMergeSettings que almacena la configuración de combinación de correspondencia registrada en el documento: MainDocumentType, CheckErrors, Destination, DataSource, DataType, Query, ConnectString, MailSubject, MailAsAttachment, ActiveRecord y ViewMergedData, además de Clear() y Clone(). Para fuentes de datos externas conectadas mediante el mecanismo Office Data Source Object de Word, MailMergeSettings.Odso expone una instancia Odso (DataSource, DataSourceType, TableName, ColumnDelimiter, FirstRowContainsColumnNames) cuyo FieldMapDatas (OdsoFieldMapDataCollection de OdsoFieldMapData: Name, MappedName, Column, Type) y RecipientDatas (OdsoRecipientDataCollection de OdsoRecipientData: Active, Column, Hash, UniqueTag) describen el mapeo de campos y la lista de destinatarios.


Configuración de vista del documento

Document.ViewOptions es una instancia ViewOptions que controla cómo Word muestra el archivo cuando se abre: ViewType, ZoomType, ZoomPercent, DisplayBackgroundShape, DoNotDisplayPageBoundaries y FormsDesign. Estas propiedades solo afectan la visualización del documento por parte de Word; no tienen ningún efecto en cómo Aspose.Words FOSS procesa el documento.


Protección de escritura

Document.WriteProtection es una instancia WriteProtection (IsWriteProtected, ReadOnlyRecommended) con SetPassword() para establecer una contraseña de protección y ValidatePassword() para comprobar una contraseña candidata contra ella.


Unidades de medida

El enum MeasurementUnits especifica la unidad de medida que Word debe usar en su interfaz para un documento.


Consejos y mejores prácticas

  • CompatibilityOptions.OptimizeFor(MsWordVersion) está presente en la clase pero su implementación no está completa en esta compilación – lanza NotImplementedException. Establezca las propiedades booleanas individuales CompatibilityOptions que necesite directamente en lugar de depender de OptimizeFor para aplicar todo un perfil de versión a la vez.
  • MailMergeSettings and Odso almacenar la combinación de correspondencia configuration que se registró en el documento – la lectura y escritura de esa configuración está soportada, pero la ejecución de una combinación de correspondencia (poblado de campos a partir de una fuente de datos en vivo) no está incluida en esta edición de código abierto.
  • HyphenationOptions y ViewOptions son ambas preferencias de visualización/UI que Word aplica por sí mismo – no espere que llamar a Document.Save() cambie cómo el texto se ajusta o aparece según estas configuraciones, ya que esta edición no incluye el motor de maquetación de página.
  • Llame a WriteProtection.SetPassword() antes de habilitar IsWriteProtected, y use ValidatePassword() para verificar una contraseña candidata en lugar de almacenar o comparar la cadena cruda usted mismo.
  • CompatibilityOptions, HyphenationOptions, MailMergeSettings, ViewOptions y WriteProtection son accesibles directamente desde Document – no es necesario buscar en el árbol de nodos para encontrarlos.

Problemas comunes

ProblemaCausaSolución
CompatibilityOptions.OptimizeFor() lanza NotImplementedExceptionNo implementado en esta compilaciónEstablezca en su lugar las propiedades booleanas individuales de CompatibilityOptions
Mail merge no rellena el documento con datosMailMergeSettings solo almacena la configuración de combinación; la ejecución no está incluida en esta ediciónLea la configuración de origen de datos almacenada y dirija su propia lógica de población de campos, o utilice la versión comercial Aspose.Words para .NET
Cambiar ViewOptions.ZoomPercent no tiene efecto visible al procesar el documentoViewOptions solo afecta la visualización de Word, no el procesamiento propio de Aspose.Words FOSSComportamiento esperado – no se necesita solución
WriteProtection.ValidatePassword() devuelve false inesperadamenteSetPassword() no se llamó primero, o se estableció una contraseña diferenteLlame a SetPassword() para establecer la contraseña protegida antes de validar

FAQ

¿Puedo usar Aspose.Words FOSS para ejecutar una combinación de correspondencia real?

No. MailMergeSettings y Odso le permiten leer y escribir la configuración de combinación almacenada en un documento, pero ejecutar una combinación de correspondencia – poblar campos a partir de una fuente de datos – no está incluido en esta edición de código abierto.

¿Funciona CompatibilityOptions.OptimizeFor()?

No – genera NotImplementedException en esta compilación. En su lugar, establezca directamente las propiedades CompatibilityOptions individuales que necesite.

¿Cómo protejo con contraseña un documento contra ediciones?

Llame a WriteProtection.SetPassword() en Document.WriteProtection, luego establezca IsWriteProtected para habilitar la protección.

¿HyphenationOptions y ViewOptions cambian la forma en que se dispone el documento?

No. Ambos son preferencias almacenadas que Microsoft Word aplica al abrir y mostrar el archivo. Esta edición no incluye el motor de maquetación de páginas, por lo que estas configuraciones se transmiten sin que Aspose.Words FOSS calcule por sí mismo el diseño a partir de ellas.


API Reference Resumen

Clase / EnumeraciónDescripción
CompatibilityOptionsConmutadores de diseño/espaciado de versiones heredadas de Word, mediante Document.CompatibilityOptions
CompatibilityEnumeración que nombra las opciones de compatibilidad individuales
MsWordVersionValores de versión de Word utilizados por CompatibilityOptions.OptimizeFor()
HyphenationOptionsPreferencias de guionado, mediante Document.HyphenationOptions
MailMergeSettingsConfiguración de combinación de correspondencia almacenada, a través de Document.MailMergeSettings
OdsoConfiguración de conexión del Office Data Source Object para la combinación de correspondencia
OdsoFieldMapData / OdsoFieldMapDataCollectionAsignación de columna a campo de combinación para una fuente de datos ODSO
OdsoRecipientData / OdsoRecipientDataCollectionEstado de inclusión/exclusión por destinatario para una combinación de correspondencia
ViewOptionsPreferencias de visualización de Word (zoom, marcas de formato), a través de Document.ViewOptions
WriteProtectionEstado de protección contra escritura del documento, a través de Document.WriteProtection
MeasurementUnitsUnidad de medida que Word debe usar en su interfaz

Ver también

 Español