Arbeiten mit Dokumenteinstellungen

Arbeiten mit Dokumenteinstellungen

Arbeiten mit Dokumenteinstellungen

Über den Inhalt hinaus enthält ein Word-Dokument Anwendungseinstellungen – Legacy-Kompatibilitäts-Schalter, Silbentrennungs-Einstellungen, die gespeicherte Seriendruck-Konfiguration, Anzeigeoptionen und den Schreibschutz-Zustand. Aspose.Words FOSS für .NET stellt dies bereit über die Aspose.Words.Settings Namensraum und eine Handvoll Eigenschaften von Document. Diese Seite behandelt jede Einstellungsgruppe und was sie steuert und was nicht.


Kompatibilitätsoptionen

Document.CompatibilityOptions ist eine CompatibilityOptions-Instanz, die dutzende boolesche Schalter enthält, die bestimmte ältere Word-Layout- und Abstandverhalten reproduzieren – zum Beispiel GrowAutofit, UseWord2010TableStyleRules, UseWord2002TableStyleRules, AdjustLineHeightInTable, AlignTablesRowByRow, NoExtraLineSpacing, SuppressSpacingAtTopOfPage, SpacingInWholePoints, UseFELayout und BalanceSingleByteDoubleByteWidth. Setzen Sie die benötigten Eigenschaften direkt, um die Rendering-Eigenheiten einer bestimmten Word-Version in nachgelagerten Werkzeugen, die das Dokument lesen, nachzubilden.


Silbentrennungspräferenzen

Document.HyphenationOptions ist eine HyphenationOptions-Instanz (AutoHyphenation, ConsecutiveHyphenLimit, HyphenateCaps, HyphenationZone), die die Silbentrennungspräferenzen von Word für das Dokument speichert. Diese Eigenschaften geben die Anforderung unverändert weiter; da diese Ausgabe nicht die Seitenlayout-Engine enthält, berechnet Aspose.Words FOSS die Silbentrennungen nicht selbst – Word wendet sie an, wenn es die Datei öffnet und paginiert.


Seriendruck-Konfiguration

Document.MailMergeSettings ist eine MailMergeSettings Instanz, die die im Dokument aufgezeichnete Seriendruck-Konfiguration speichert: MainDocumentType, CheckErrors, Destination, DataSource, DataType, Query, ConnectString, MailSubject, MailAsAttachment, ActiveRecord und ViewMergedData, plus Clear() und Clone(). Für externe Datenquellen, die über den Office Data Source Object-Mechanismus von Word verbunden sind, stellt MailMergeSettings.Odso eine Odso Instanz (DataSource, DataSourceType, TableName, ColumnDelimiter, FirstRowContainsColumnNames) bereit, deren FieldMapDatas (OdsoFieldMapDataCollection von OdsoFieldMapData: Name, MappedName, Column, Type) und RecipientDatas (OdsoRecipientDataCollection von OdsoRecipientData: Active, Column, Hash, UniqueTag) die Feldzuordnung und Empfängerliste beschreiben.


Dokumentenansichtseinstellungen

Document.ViewOptions ist eine ViewOptions Instanz, die steuert, wie Word die Datei beim Öffnen anzeigt: ViewType, ZoomType, ZoomPercent, DisplayBackgroundShape, DoNotDisplayPageBoundaries und FormsDesign. Diese Eigenschaften wirken sich ausschließlich auf die Anzeige des Dokuments durch Word aus – sie haben keinen Einfluss darauf, wie Aspose.Words FOSS das Dokument selbst verarbeitet.


Schreibschutz

Document.WriteProtection ist eine WriteProtection Instanz (IsWriteProtected, ReadOnlyRecommended) mit SetPassword() zum Festlegen eines Schutzkennworts und ValidatePassword() zum Überprüfen eines Kandidatenkennworts.


Maßeinheiten

Der MeasurementUnits Enum gibt die Maßeinheit an, die Word in seiner Benutzeroberfläche für ein Dokument verwenden soll.


Tipps und bewährte Verfahren

  • CompatibilityOptions.OptimizeFor(MsWordVersion) ist in der Klasse vorhanden, aber seine Implementierung ist in diesem Build nicht vollständig – es wirft NotImplementedException. Setzen Sie die einzelnen CompatibilityOptions booleschen Eigenschaften, die Sie benötigen, direkt, anstatt sich auf OptimizeFor zu verlassen, um ein komplettes Versionsprofil auf einmal anzuwenden.
  • MailMergeSettings and Odso Speichern den Seriendruck configuration die im Dokument aufgezeichnet wurde – das Lesen und Schreiben dieser Konfiguration wird unterstützt, aber das Ausführen eines Seriendrucks (Ausfüllen von Feldern aus einer Live-Datenquelle) ist in dieser Open-Source-Edition nicht enthalten.
  • HyphenationOptions und ViewOptions sind beide Anzeige-/UI-Einstellungen, die Word selbst anwendet – erwarten Sie nicht, dass ein Aufruf von Document.Save() das Zeilenumbruchsverhalten oder das Erscheinungsbild des Textes basierend auf diesen Einstellungen ändert, da diese Edition die Page-Layout-Engine nicht enthält.
  • Rufen Sie WriteProtection.SetPassword() auf, bevor Sie IsWriteProtected aktivieren, und verwenden Sie ValidatePassword(), um ein Kandidatenpasswort zu prüfen, anstatt die rohe Zeichenkette selbst zu speichern oder zu vergleichen.
  • CompatibilityOptions, HyphenationOptions, MailMergeSettings, ViewOptions und WriteProtection sind alle direkt über Document erreichbar – es ist nicht nötig, im Knotenbaum nach ihnen zu suchen.

Häufige Probleme

ProblemUrsacheBehebung
CompatibilityOptions.OptimizeFor() wirft NotImplementedExceptionIn diesem Build nicht implementiertSetzen Sie stattdessen die einzelnen booleschen Eigenschaften von CompatibilityOptions
Mail-Merge füllt das Dokument nicht mit DatenMailMergeSettings speichert nur die Merge-Konfiguration; die Ausführung ist in dieser Edition nicht enthaltenLesen Sie die gespeicherte Datenquellen-Konfiguration und steuern Sie Ihre eigene Feldbefüllungslogik, oder verwenden Sie die kommerzielle Aspose.Words für .NET
Das Ändern von ViewOptions.ZoomPercent hat beim Verarbeiten des Dokuments keine sichtbare AuswirkungViewOptions wirkt sich nur auf die Anzeige in Word aus, nicht auf die eigene Verarbeitung von Aspose.Words FOSSErwartetes Verhalten – keine Korrektur nötig
WriteProtection.ValidatePassword() liefert unerwartet falseSetPassword() wurde nicht zuerst aufgerufen, oder es wurde ein anderes Passwort gesetztRufen Sie SetPassword() auf, um das geschützte Passwort vor der Validierung festzulegen

FAQ

Kann ich Aspose.Words FOSS verwenden, um einen tatsächlichen Mail-Merge durchzuführen?

Nein. MailMergeSettings und Odso ermöglichen das Lesen und Schreiben der in einem Dokument gespeicherten Seriendruckkonfiguration, aber das Ausführen eines Seriendrucks – das Befüllen von Feldern aus einer Datenquelle – ist in dieser Open-Source-Edition nicht enthalten.

Funktioniert CompatibilityOptions.OptimizeFor()?

Nein – es wirft NotImplementedException in diesem Build. Setzen Sie stattdessen die einzelnen CompatibilityOptions-Eigenschaften, die Sie benötigen, direkt.

Wie kann ich ein Dokument mit einem Passwort gegen Änderungen schützen?

Rufen Sie WriteProtection.SetPassword() auf Document.WriteProtection auf, und setzen Sie dann IsWriteProtected, um den Schutz zu aktivieren.

Ändern HyphenationOptions und ViewOptions das Layout des Dokuments?

Nein. Beide sind gespeicherte Einstellungen, die Microsoft Word beim Öffnen und Anzeigen der Datei anwendet. Diese Edition enthält die Seitenlayout-Engine nicht, sodass diese Einstellungen weitergereicht werden, ohne dass Aspose.Words FOSS selbst das Layout daraus berechnet.


API Reference Zusammenfassung

Klasse / AufzählungBeschreibung
CompatibilityOptionsLegacy-Word-Version Layout-/Abstands-Schalter, über Document.CompatibilityOptions
CompatibilityEnum, das die einzelnen Kompatibilitätsoptionen benennt
MsWordVersionWord-Version-Werte, die von CompatibilityOptions.OptimizeFor() verwendet werden
HyphenationOptionsSilbentrennungspräferenzen, über Document.HyphenationOptions
MailMergeSettingsGespeicherte Seriendruck-Konfiguration, über Document.MailMergeSettings
OdsoOffice Data Source Object-Verbindungseinstellungen für Seriendruck
OdsoFieldMapData / OdsoFieldMapDataCollectionSpalten-zu-Seriendruckfeld-Zuordnung für eine ODSO-Datenquelle
OdsoRecipientData / OdsoRecipientDataCollectionEinbeziehungs-/Ausschlussstatus pro Empfänger für den Seriendruck
ViewOptionsWord-Anzeigeeinstellungen (Zoom, Formatierungszeichen), über Document.ViewOptions
WriteProtectionDokument-Schreibschutzstatus, über Document.WriteProtection
MeasurementUnitsEinheit, die Word in seiner Benutzeroberfläche verwenden soll

Siehe auch

 Deutsch