Hur man arbetar med dokumentinställningar i .NET

Hur man arbetar med dokumentinställningar i .NET

Denna guide visar hur man arbetar med applikationsnivåns dokumentinställningar i Aspose.Words FOSS för .NET: legacy compatibility switches, hyphenation preferences, den lagrade mail-merge-konfigurationen, view options och write protection. Aspose.Words FOSS för .NET är tillgänglig via NuGet eller genom att bygga från källkod.

Steg-för-steg-guide

Steg 1: Hämta biblioteket

Klona arkivet och bygg Aspose.Words.sln i Release-konfiguration, lägg sedan till en projektreferens till Aspose.Words.csproj från ditt eget .NET-projekt, som beskrivs i den installationsguiden. Lägg till using Aspose.Words; and using Aspose.Words.Settings; högst upp i alla filer som läser eller skriver dokumentinställningar.


Steg 2: Ställ in legacy compatibility options

Document.CompatibilityOptions (en CompatibilityOptions-instans) innehåller dussintals booleska växlar som reproducerar specifika äldre-Word layout- och avståndsbeteenden — till exempel GrowAutofit, UseWord2010TableStyleRules, AdjustLineHeightInTable, AlignTablesRowByRow, NoExtraLineSpacing, SuppressSpacingAtTopOfPage och SpacingInWholePoints. Ställ in de enskilda egenskaperna du behöver direkt; OptimizeFor(MsWordVersion) finns på klassen men kastar NotImplementedException i detta bygge, så det finns ingen genväg som tillämpar en hel versionsprofil på en gång.


Steg 3: Konfigurera avstavningsinställningar

Document.HyphenationOptions (en HyphenationOptions instans) lagrar Word:s avstavningsinställningar för dokumentet: AutoHyphenation, ConsecutiveHyphenLimit, HyphenateCaps och HyphenationZone. Dessa egenskaper transporterar förfrågan i den sparade filen; eftersom denna utgåva saknar en sidlayoutsmotor beräknas avstavningsavbrotten av Word när den öppnar och paginerar filen, inte av Aspose.Words FOSS.


Steg 4: Läs och skriv mail-merge-konfiguration

Document.MailMergeSettings (en MailMergeSettings instans) lagrar mail-merge-konfigurationen som sparats i dokumentet — MainDocumentType, CheckErrors, Destination, DataSource, DataType, Query, ConnectString, MailSubject, MailAsAttachment, ActiveRecord och ViewMergedData — samt Clear() och Clone(). För en extern datakälla som är ansluten via Word’s Office Data Source Object-mekanism, exponerar MailMergeSettings.Odso en Odso instans (DataSource, DataSourceType, TableName, ColumnDelimiter, FirstRowContainsColumnNames), vars FieldMapDatas- och RecipientDatas-samlingar beskriver fältmappning och mottagarlista. Läsning och skrivning av denna lagrade konfiguration är tillgänglig i denna open-source-utgåva; att köra själva sammanslagningen mot en levande datakälla är en separat fråga som ligger utanför denna sidas omfattning.


Steg 5: Konfigurera visningsinställningar för dokumentet

Document.ViewOptions (en ViewOptions instans) styr hur Word visar filen när den öppnas: ViewType, ZoomType, ZoomPercent, DisplayBackgroundShape, DoNotDisplayPageBoundaries och FormsDesign. Dessa egenskaper är lagrade preferenser som endast påverkar Word:s egen visning av dokumentet — de har ingen inverkan på hur Aspose.Words FOSS själv bearbetar det.


Steg 6: Tillämpa skrivskydd

Document.WriteProtection (en WriteProtection instans) exponerar IsWriteProtected och ReadOnlyRecommended, med SetPassword() för att skapa ett skyddslösenord och ValidatePassword() för att kontrollera ett föreslaget lösenord mot det. Anropa SetPassword() innan du sätter IsWriteProtected = true, och använd ValidatePassword() i stället för att själv lagra eller jämföra det råa lösenordet.

Vanliga problem och lösningar

CompatibilityOptions.OptimizeFor() throws NotImplementedException. Den här metoden är inte implementerad i det här bygget. Ställ in de individuella CompatibilityOptions booleska egenskaper du behöver direkt istället.

Changing ViewOptions.ZoomPercent har ingen synlig effekt på genererat utdata. ViewOptions är en lagrad visningsinställning som läses av Word, inte något som Aspose.Words FOSS själv tillämpar under bearbetning. Ingen åtgärd behövs — detta är förväntat.

WriteProtection.ValidatePassword() returnerar oväntat false. SetPassword() blev aldrig anropad, eller så sattes ett annat lösenord. Anropa SetPassword() först för att etablera det skyddade lösenordet innan validering.

Mail-merge-konfigurationen sparas men sammanslagningen körs inte. MailMergeSettings and Odso lagrar bara sammanslagningskonfigurationen; den här open-source-utgåvan kör inte själva sammanslagningen. Läs den lagrade konfigurationen och styr din egen fält-populate-logik utifrån den.

Vanliga frågor

Fungerar CompatibilityOptions.OptimizeFor()?

Nej — den kastar NotImplementedException i den här byggversionen. Ställ in de enskilda CompatibilityOptions-egenskaperna du behöver direkt.

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 ser ut när Aspose.Words FOSS bearbetar det?

Nej. Båda är lagrade preferenser som Word själv tillämpar när det öppnar och visar filen; den här utgåvan har ingen sidlayoutsmotor för att hantera dem direkt.

Var hittar jag konfigurationen för mail-merge-datakällan för en extern datakälla?

MailMergeSettings.Odso — dess FieldMapDatas och RecipientDatas samlingar beskriver kolumnmappningen och mottagarinkluderingsstatusen.

Vad är skillnaden mellan Document.CompatibilityOptions och Document.ViewOptions?

CompatibilityOptions switchar återger äldre Word-layout och avstånds-egenskaper; ViewOptions styr hur Words eget gränssnitt visar filen (zoom, formateringsmarkörer). Ingen av dem beräknas av Aspose.Words FOSS själva.

Se även

 Svenska