Travailler avec les paramètres du document

Travailler avec les paramètres du document

Travailler avec les paramètres du document

Au-delà du contenu, un document Word transporte des paramètres au niveau de l’application – commutateurs de compatibilité hérités, préférences de césure, la configuration de mail-merge stockée, les options d’affichage et l’état de protection en écriture. Aspose.Words FOSS pour .NET expose ceux-ci via le Aspose.Words.Settings espace de noms et une poignée de propriétés sur Document. Cette page couvre chaque groupe de paramètres et ce qu’il contrôle ou ne contrôle pas.


Options de compatibilité

Document.CompatibilityOptions est une instance CompatibilityOptions contenant des dizaines de commutateurs booléens qui reproduisent des comportements de mise en page et d’espacement spécifiques aux versions plus anciennes de Word – par exemple GrowAutofit, UseWord2010TableStyleRules, UseWord2002TableStyleRules, AdjustLineHeightInTable, AlignTablesRowByRow, NoExtraLineSpacing, SuppressSpacingAtTopOfPage, SpacingInWholePoints, UseFELayout et BalanceSingleByteDoubleByteWidth. Définissez directement les propriétés dont vous avez besoin pour correspondre aux particularités de rendu d’une version spécifique de Word dans les outils en aval qui lisent le document.


Préférences de césure

Document.HyphenationOptions est une instance HyphenationOptions (AutoHyphenation, ConsecutiveHyphenLimit, HyphenateCaps, HyphenationZone) qui stocke les préférences de césure de Word pour le document. Ces propriétés assurent le aller-retour de la demande; comme cette édition n’inclut pas le moteur de mise en page, Aspose.Words FOSS ne calcule pas lui-même les ruptures de césure – Word les applique lorsqu’il ouvre et pagine le fichier.


Configuration du publipostage

Document.MailMergeSettings est une instance MailMergeSettings qui stocke la configuration de publipostage enregistrée dans le document : MainDocumentType, CheckErrors, Destination, DataSource, DataType, Query, ConnectString, MailSubject, MailAsAttachment, ActiveRecord et ViewMergedData, ainsi que Clear() et Clone(). Pour les sources de données externes connectées via le mécanisme Office Data Source Object de Word, MailMergeSettings.Odso expose une instance Odso (DataSource, DataSourceType, TableName, ColumnDelimiter, FirstRowContainsColumnNames) dont le FieldMapDatas (OdsoFieldMapDataCollection de OdsoFieldMapData : Name, MappedName, Column, Type) et le RecipientDatas (OdsoRecipientDataCollection de OdsoRecipientData : Active, Column, Hash, UniqueTag) décrivent le mappage des champs et la liste des destinataires.


Paramètres d’affichage du document

Document.ViewOptions est une instance ViewOptions qui contrôle la façon dont Word affiche le fichier lorsqu’il est ouvert : ViewType, ZoomType, ZoomPercent, DisplayBackgroundShape, DoNotDisplayPageBoundaries et FormsDesign. Ces propriétés n’affectent que l’affichage du document par Word – elles n’ont aucun effet sur la façon dont Aspose.Words FOSS traite le document.


Protection en écriture

Document.WriteProtection est une instance WriteProtection (IsWriteProtected, ReadOnlyRecommended) avec SetPassword() pour établir un mot de passe de protection et ValidatePassword() pour vérifier un mot de passe candidat.


Unités de mesure

L’énumération MeasurementUnits spécifie l’unité de mesure que Word doit utiliser dans son interface pour un document.


Conseils et meilleures pratiques

  • CompatibilityOptions.OptimizeFor(MsWordVersion) est présent sur la classe mais son implémentation n’est pas complète dans cette version – il lève NotImplementedException. Définissez directement les propriétés booléennes CompatibilityOptions dont vous avez besoin au lieu de vous fier à OptimizeFor pour appliquer un profil de version complet d’un coup.
  • MailMergeSettings and Odso stocke le mail-merge configuration qui a été enregistré dans le document – la lecture et l’écriture de cette configuration sont prises en charge, mais l’exécution d’un mail merge (remplissage des champs à partir d’une source de données en direct) n’est pas incluse dans cette édition open-source.
  • HyphenationOptions et ViewOptions sont tous deux des préférences d’affichage/UI que Word applique lui-même – ne vous attendez pas à ce que l’appel de Document.Save() modifie la façon dont le texte s’enroule ou apparaît en fonction de ces paramètres, car cette édition n’inclut pas le moteur de mise en page.
  • Appelez WriteProtection.SetPassword() avant d’activer IsWriteProtected, et utilisez ValidatePassword() pour vérifier un mot de passe candidat plutôt que de stocker ou de comparer vous-même la chaîne brute.
  • CompatibilityOptions, HyphenationOptions, MailMergeSettings, ViewOptions et WriteProtection sont tous accessibles directement depuis Document – il n’est pas nécessaire de parcourir l’arbre de nœuds pour les trouver.

Problèmes courants

ProblèmeCauseCorrection
CompatibilityOptions.OptimizeFor() lance NotImplementedExceptionNon implémenté dans cette versionDéfinissez plutôt les propriétés booléennes individuelles CompatibilityOptions
La fusion et publipostage ne remplit pas le document avec des donnéesMailMergeSettings ne stocke que la configuration de fusion ; l’exécution n’est pas incluse dans cette éditionLisez la configuration de source de données stockée et pilotez votre propre logique de remplissage de champs, ou utilisez la version commerciale Aspose.Words pour .NET
Modifier ViewOptions.ZoomPercent n’a aucun effet visible lors du traitement du documentViewOptions n’affecte que l’affichage de Word, pas le traitement propre de Aspose.Words FOSSComportement attendu – aucune correction nécessaire
WriteProtection.ValidatePassword() renvoie false de manière inattendueSetPassword() n’a pas été appelé en premier, ou un mot de passe différent a été définiAppelez SetPassword() pour établir le mot de passe protégé avant la validation

FAQ

Puis-je utiliser Aspose.Words FOSS pour exécuter un vrai publipostage?

Non. MailMergeSettings et Odso vous permettent de lire et d’écrire la configuration de fusion stockée dans un document, mais l’exécution d’une fusion de courrier – remplissage des champs à partir d’une source de données – n’est pas incluse dans cette édition open-source.

Est-ce que CompatibilityOptions.OptimizeFor() fonctionne?

Non – il génère NotImplementedException dans cette version. Définissez directement les propriétés CompatibilityOptions individuelles dont vous avez besoin à la place.

Comment protéger par mot de passe un document contre les modifications?

Appelez WriteProtection.SetPassword() sur Document.WriteProtection, puis définissez IsWriteProtected pour activer la protection.

Est-ce que HyphenationOptions et ViewOptions modifient la mise en page du document?

Non. Les deux sont des préférences stockées que Microsoft Word applique lors de l’ouverture et de l’affichage du fichier. Cette édition n’inclut pas le moteur de mise en page, de sorte que ces paramètres sont transmis sans que Aspose.Words FOSS ne calcule lui-même la mise en page à partir d’eux.


API Reference Résumé

Classe / EnumDescription
CompatibilityOptionsCommutateurs d’alignement/espacement hérités de la version Word, via Document.CompatibilityOptions
CompatibilityEnum nommant les options de compatibilité individuelles
MsWordVersionValeurs de version Word utilisées par CompatibilityOptions.OptimizeFor()
HyphenationOptionsPréférences de césure, via Document.HyphenationOptions
MailMergeSettingsConfiguration de publipostage stockée, via Document.MailMergeSettings
OdsoParamètres de connexion de l’Office Data Source Object pour le publipostage
OdsoFieldMapData / OdsoFieldMapDataCollectionCorrespondance colonne-champ de fusion pour une source de données ODSO
OdsoRecipientData / OdsoRecipientDataCollectionÉtat d’inclusion/exclusion par destinataire pour une fusion de courrier
ViewOptionsPréférences d’affichage de Word (zoom, marques de mise en forme), via Document.ViewOptions
WriteProtectionÉtat de protection en écriture du document, via Document.WriteProtection
MeasurementUnitsUnité de mesure que Word doit utiliser dans son interface

Voir aussi

 Français