Arbeta med dokumentinställningar
Arbeta med dokumentinställningar
Utöver innehållet bär ett Word-dokument med sig programnivåinställningar – äldre kompatibilitetsväxlar, avstavningsinställningar, den lagrade mail-merge-konfigurationen, visningsalternativ och skrivskyddsstatus. Aspose.Words FOSS för .NET exponerar dessa via den Aspose.Words.Settings namnrymd och ett fåtal egenskaper på Document. Den här sidan täcker varje inställningsgrupp och vad den styr och inte styr.
Kompatibilitetsalternativ
Document.CompatibilityOptions är en CompatibilityOptions-instans som innehåller dussintals booleska växlar som återger specifika äldre Word-layout- och avståndsbeteenden – till exempel GrowAutofit, UseWord2010TableStyleRules, UseWord2002TableStyleRules, AdjustLineHeightInTable, AlignTablesRowByRow, NoExtraLineSpacing, SuppressSpacingAtTopOfPage, SpacingInWholePoints, UseFELayout och BalanceSingleByteDoubleByteWidth. Ställ in de egenskaper du behöver direkt för att matcha en specifik Word-versions renderingsnyanser i efterföljande verktyg som läser dokumentet.
Avstavningspreferenser
Document.HyphenationOptions är en HyphenationOptions-instans (AutoHyphenation, ConsecutiveHyphenLimit, HyphenateCaps, HyphenationZone) som lagrar Words avstavningspreferenser för dokumentet. Dessa egenskaper gör en round-trip av förfrågan; eftersom den här utgåvan inte innehåller sidlayout-motorn, beräknar Aspose.Words FOSS inte själva avstavningsavbrott – Word tillämpar dem när den öppnar och paginerar filen.
Mail-merge-konfiguration
Document.MailMergeSettings är en MailMergeSettings instans som lagrar mail-merge-konfigurationen som registrerats i dokumentet: MainDocumentType, CheckErrors, Destination, DataSource, DataType, Query, ConnectString, MailSubject, MailAsAttachment, ActiveRecord och ViewMergedData, samt Clear() och Clone(). För externa datakällor som ansluts via Words Office Data Source Object-mekanism, exponerar MailMergeSettings.Odso en Odso instans (DataSource, DataSourceType, TableName, ColumnDelimiter, FirstRowContainsColumnNames) vars FieldMapDatas (OdsoFieldMapDataCollection av OdsoFieldMapData: Name, MappedName, Column, Type) och RecipientDatas (OdsoRecipientDataCollection av OdsoRecipientData: Active, Column, Hash, UniqueTag) beskriver fältmappning och mottagarlista.
Inställningar för dokumentvy
Document.ViewOptions är en ViewOptions instans som styr hur Word visar filen när den öppnas: ViewType, ZoomType, ZoomPercent, DisplayBackgroundShape, DoNotDisplayPageBoundaries och FormsDesign. Dessa egenskaper påverkar endast Words egen visning av dokumentet – de har ingen inverkan på hur Aspose.Words FOSS själv behandlar det.
Skrivskydd
Document.WriteProtection är en WriteProtection instans (IsWriteProtected, ReadOnlyRecommended) med SetPassword() för att skapa ett skyddslösenord och ValidatePassword() för att kontrollera ett föreslaget lösenord mot det.
Måttenheter
MeasurementUnits-enumerationen anger vilken måttenhet Word ska använda i sitt gränssnitt för ett dokument.
Tips och bästa praxis
CompatibilityOptions.OptimizeFor(MsWordVersion)finns på klassen men dess implementation är inte komplett i den här byggnaden – den kastarNotImplementedException. Ställ in de enskildaCompatibilityOptionsboolean-egenskaperna du behöver direkt istället för att förlita dig påOptimizeForför att tillämpa en hel versionsprofil på en gång.MailMergeSettingsandOdsolagra mail-merge configuration som spelades in i dokumentet – läsning och skrivning av den konfigurationen stöds, men att utföra en mail merge (fyllning av fält från en levande datakälla) ingår inte i denna öppna källkodsversion.HyphenationOptionsochViewOptionsär båda display-/UI-preferenser som Word själv tillämpar – förvänta dig inte att anropaDocument.Save()ändrar hur texten radbryts eller visas baserat på dessa inställningar, eftersom den här utgåvan inte inkluderar sidlayout-motorn.- Anropa
WriteProtection.SetPassword()innan du aktiverarIsWriteProtected, och användValidatePassword()för att kontrollera ett föreslaget lösenord istället för att lagra eller jämföra den råa strängen själv. CompatibilityOptions,HyphenationOptions,MailMergeSettings,ViewOptionsochWriteProtectionär alla åtkomliga direkt frånDocument– det är inte nödvändigt att söka i nodträdet efter dem.
Vanliga problem
| Problem | Orsak | Åtgärd |
|---|---|---|
CompatibilityOptions.OptimizeFor() kastar NotImplementedException | Ej implementerad i denna version | Ställ in de individuella CompatibilityOptions booleska egenskaperna istället |
| Mail merge fyller inte i dokumentet med data | MailMergeSettings lagrar endast sammanslagningskonfiguration; exekvering ingår inte i denna version | Läs den lagrade datakällskonfigurationen och styr din egen logik för fältfyllning, eller använd den kommersiella Aspose.Words för .NET |
Att ändra ViewOptions.ZoomPercent har ingen synlig effekt när dokumentet bearbetas | ViewOptions påverkar endast Words visning, inte Aspose.Words FOSS:s egen bearbetning | Förväntat beteende – ingen fix behövs |
WriteProtection.ValidatePassword() returnerar false oväntat | SetPassword() anropades inte först, eller så sattes ett annat lösenord | Anropa SetPassword() för att etablera det skyddade lösenordet innan validering |
FAQ
Kan jag använda Aspose.Words FOSS för att köra en faktisk mail merge?
Nej. MailMergeSettings och Odso låter dig läsa och skriva sammanslagningskonfigurationen som lagras i ett dokument, men att köra en brevsammanslagning – fylla i fält från en datakälla – ingår inte i den här open-source-utgåvan.
Fungerar CompatibilityOptions.OptimizeFor()?
Nej – den kastar NotImplementedException i den här versionen. Ställ in de enskilda CompatibilityOptions-egenskaperna du behöver direkt istället.
Hur skyddar jag ett dokument med lösenord mot redigering?
Anropa WriteProtection.SetPassword() på Document.WriteProtection, sätt sedan IsWriteProtected för att aktivera skyddet.
Ändrar HyphenationOptions och ViewOptions hur dokumentet layoutas?
Nej. Båda är lagrade inställningar som Microsoft Word tillämpar när den öppnar och visar filen. Denna utgåva innehåller inte sidlayoutmotorn, så dessa inställningar passerar igenom utan att Aspose.Words FOSS själv beräknar layouten utifrån dem.
API Reference Sammanfattning
| Klass / Enum | Beskrivning |
|---|---|
CompatibilityOptions | Äldre Word-version layout-/avståndsbyten, via Document.CompatibilityOptions |
Compatibility | Enum som namnger de individuella kompatibilitetsalternativen |
MsWordVersion | Word-versionvärden som används av CompatibilityOptions.OptimizeFor() |
HyphenationOptions | Preferenser för avstavning, via Document.HyphenationOptions |
MailMergeSettings | Sparad mail-merge-konfiguration, via Document.MailMergeSettings |
Odso | Office Data Source Object-anslutningsinställningar för mail merge |
OdsoFieldMapData / OdsoFieldMapDataCollection | Kolumn-till-sammanfogningsfält-mappning för en ODSO-datakälla |
OdsoRecipientData / OdsoRecipientDataCollection | Per-mottagare inklusions-/exklusionsstatus för en mail merge |
ViewOptions | Word-visningsinställningar (zoom, formateringsmarkeringar), via Document.ViewOptions |
WriteProtection | Dokumentets skrivskyddstillstånd, via Document.WriteProtection |
MeasurementUnits | Måttenhet som Word bör använda i sitt gränssnitt |