Cómo trabajar con la configuración del documento en .NET

Cómo trabajar con la configuración del documento en .NET

Esta guía muestra cómo trabajar con la configuración de documentos a nivel de aplicación en Aspose.Words FOSS para .NET: interruptores de compatibilidad heredada, preferencias de guionado, la configuración almacenada de mail-merge, opciones de vista y protección contra escritura. Aspose.Words FOSS para .NET está disponible a través de NuGet o compilando desde el código fuente.

Guía paso a paso

Paso 1: Obtener la biblioteca

Clona el repositorio y compila Aspose.Words.sln en configuración Release, luego agrega una referencia de proyecto a Aspose.Words.csproj desde tu propio proyecto .NET, como se describe en el Guía de instalación. Añade using Aspose.Words; and using Aspose.Words.Settings; en la parte superior de cualquier archivo que lea o escriba la configuración del documento.


Paso 2: Establecer opciones de compatibilidad heredada

Document.CompatibilityOptions (una instancia de CompatibilityOptions) contiene docenas de interruptores booleanos que reproducen comportamientos específicos de diseño y espaciado de versiones anteriores de Word — por ejemplo GrowAutofit, UseWord2010TableStyleRules, AdjustLineHeightInTable, AlignTablesRowByRow, NoExtraLineSpacing, SuppressSpacingAtTopOfPage y SpacingInWholePoints. Establece directamente las propiedades individuales que necesites; OptimizeFor(MsWordVersion) está presente en la clase pero lanza NotImplementedException en esta compilación, por lo que no existe un atajo que aplique todo un perfil de versión de una sola vez.


Paso 3: Configurar las Preferencias de Guionado

Document.HyphenationOptions (una instancia de HyphenationOptions) almacena las preferencias de guionado de Word para el documento: AutoHyphenation, ConsecutiveHyphenLimit, HyphenateCaps y HyphenationZone. Estas propiedades hacen un viaje de ida y vuelta de la solicitud en el archivo guardado; dado que esta edición no tiene motor de maquetación, los saltos de guionado se calculan por Word al abrir y paginar el archivo, no por Aspose.Words FOSS.


Paso 4: Leer y escribir la configuración de combinación de correspondencia

Document.MailMergeSettings (una instancia de MailMergeSettings) 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 una fuente de datos externa conectada mediante el mecanismo Office Data Source Object de Word, MailMergeSettings.Odso expone una instancia de Odso (DataSource, DataSourceType, TableName, ColumnDelimiter, FirstRowContainsColumnNames), cuyas colecciones FieldMapDatas y RecipientDatas describen el mapeo de campos y la lista de destinatarios. La lectura y escritura de esta configuración almacenada está disponible en esta edición de código abierto; ejecutar la combinación propiamente dicha contra una fuente de datos en tiempo real es una preocupación separada fuera del alcance de esta página.


Paso 5: Configurar la configuración de vista del documento

Document.ViewOptions (una instancia de ViewOptions) controla cómo Word muestra el archivo una vez abierto: ViewType, ZoomType, ZoomPercent, DisplayBackgroundShape, DoNotDisplayPageBoundaries y FormsDesign. Estas propiedades son preferencias almacenadas que solo afectan la propia visualización del documento por parte de Word — no influyen en cómo Aspose.Words FOSS lo procesa.


Paso 6: Aplicar protección de escritura

Document.WriteProtection (una instancia de WriteProtection) expone IsWriteProtected y ReadOnlyRecommended, con SetPassword() para establecer una contraseña de protección y ValidatePassword() para verificar una contraseña candidata contra ella. Llame a SetPassword() antes de establecer IsWriteProtected = true, y use ValidatePassword() en lugar de almacenar o comparar la cadena de contraseña sin procesar usted mismo.

Problemas comunes y soluciones

CompatibilityOptions.OptimizeFor() throws NotImplementedException. Este método no está implementado en esta compilación. Establece los CompatibilityOptions propiedades booleanas que necesites directamente en su lugar.

Changing ViewOptions.ZoomPercent no tiene ningún efecto visible en la salida generada. ViewOptions es una preferencia de visualización almacenada que lee Word, no algo que Aspose.Words FOSS aplique durante el procesamiento. No se necesita una solución — esto es esperado.

WriteProtection.ValidatePassword() devuelve inesperadamente false. SetPassword() nunca se llamó, o se estableció una contraseña diferente. Llame SetPassword() primero para establecer la contraseña protegida antes de validar.

La configuración de combinación de correspondencia se guarda pero la combinación no se ejecuta. MailMergeSettings and Odso almacena solo la configuración de la combinación; esta edición de código abierto no ejecuta la combinación por sí misma. Lea la configuración almacenada y conduzca su propia lógica de población de campos contra ella.

Preguntas frecuentes

¿Funciona CompatibilityOptions.OptimizeFor()?

No — lanza NotImplementedException en esta compilación. 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.

¿Cambian HyphenationOptions y ViewOptions la apariencia del documento cuando Aspose.Words FOSS lo procesa?

No. Ambos son preferencias almacenadas que Word mismo aplica al abrir y mostrar el archivo; esta edición no tiene un motor de maquetación de página para actuar sobre ellas directamente.

¿Dónde encuentro la configuración de la fuente de datos de combinación de correspondencia para una fuente de datos externa?

MailMergeSettings.Odso — sus colecciones FieldMapDatas y RecipientDatas describen el mapeo de columnas y el estado de inclusión de los destinatarios.

¿Cuál es la diferencia entre Document.CompatibilityOptions y Document.ViewOptions?

Los interruptores CompatibilityOptions reproducen el diseño y las peculiaridades de espaciado de versiones anteriores de Word; ViewOptions controla cómo la propia interfaz de Word muestra el archivo (zoom, marcas de formato). Ninguno es calculado por el propio FOSS Aspose.Words.

Ver también

 Español