Lucrul cu setările documentului
Lucrul cu setările documentului
Dincolo de conținut, un document Word conține setări la nivel de aplicație – întrerupătoare de compatibilitate vechi, preferințe de despărțire silabe, configurația de îmbinare a corespondenței stocată, opțiuni de vizualizare și starea de protecție la scriere. Aspose.Words FOSS pentru .NET expune acestea prin Aspose.Words.Settings spațiul de nume și o serie de proprietăți pe Document. Această pagină acoperă fiecare grup de setări și ce controlează și ce nu controlează.
Opțiuni de compatibilitate
Document.CompatibilityOptions este o instanță CompatibilityOptions care conține zeci de comutatoare booleene ce reproduc comportamente specifice de aspect și spațiere ale versiunilor mai vechi de Word — de exemplu GrowAutofit, UseWord2010TableStyleRules, UseWord2002TableStyleRules, AdjustLineHeightInTable, AlignTablesRowByRow, NoExtraLineSpacing, SuppressSpacingAtTopOfPage, SpacingInWholePoints, UseFELayout și BalanceSingleByteDoubleByteWidth. Setează direct proprietățile de care ai nevoie pentru a potrivi particularitățile de randare ale unei versiuni specifice de Word în instrumentele ulterioare care citesc documentul.
Preferințe de despărțire în silabe
Document.HyphenationOptions este o instanță HyphenationOptions (AutoHyphenation, ConsecutiveHyphenLimit, HyphenateCaps, HyphenationZone) care stochează preferințele de despărțire în silabe ale Word pentru document. Aceste proprietăți fac round-trip al cererii; deoarece această ediție nu include motorul de aranjare a paginilor, Aspose.Words FOSS nu calculează singur întreruperile de despărțire în silabe — Word le aplică când deschide și paginează fișierul.
Configurarea îmbinării de corespondență
Document.MailMergeSettings este o instanță MailMergeSettings care stochează configurația de îmbinare a corespondenței înregistrată în documentul: MainDocumentType, CheckErrors, Destination, DataSource, DataType, Query, ConnectString, MailSubject, MailAsAttachment, ActiveRecord și ViewMergedData, plus Clear() și Clone(). Pentru sursele de date externe conectate prin mecanismul Objectului Sursă de Date Office al Word, MailMergeSettings.Odso expune o instanță Odso (DataSource, DataSourceType, TableName, ColumnDelimiter, FirstRowContainsColumnNames) al cărei FieldMapDatas (OdsoFieldMapDataCollection al OdsoFieldMapData: Name, MappedName, Column, Type) și RecipientDatas (OdsoRecipientDataCollection al OdsoRecipientData: Active, Column, Hash, UniqueTag) descriu maparea câmpurilor și lista de destinatari.
Setări de vizualizare a documentului
Document.ViewOptions este o instanță ViewOptions care controlează modul în care Word afișează fișierul când este deschis: ViewType, ZoomType, ZoomPercent, DisplayBackgroundShape, DoNotDisplayPageBoundaries și FormsDesign. Aceste proprietăți afectează doar afișarea documentului în Word — nu au niciun efect asupra modului în care Aspose.Words FOSS procesează documentul.
Protecție la scriere
Document.WriteProtection este o instanță WriteProtection (IsWriteProtected, ReadOnlyRecommended) cu SetPassword() pentru a stabili o parolă de protecție și ValidatePassword() pentru a verifica o parolă candidată față de aceasta.
Unități de măsură
Enumerația MeasurementUnits specifică unitatea de măsură pe care Word ar trebui să o folosească în interfața sa pentru un document.
Sfaturi și bune practici
CompatibilityOptions.OptimizeFor(MsWordVersion)este prezentă în clasă, dar implementarea ei nu este completă în această construcție – aruncăNotImplementedException. Setează proprietățile booleene individualeCompatibilityOptionsde care ai nevoie direct, în loc să te bazezi peOptimizeForpentru a aplica un profil de versiune întreg deodată.MailMergeSettingsandOdsostochează îmbinarea de corespondență configuration care a fost înregistrată în document – citirea și scrierea acelei configurații sunt suportate, dar executarea unei îmbinări de corespondență (popularea câmpurilor dintr-o sursă de date live) nu este inclusă în această ediție open-source.HyphenationOptionsșiViewOptionssunt ambele preferințe de afișare/UI pe care le aplică Word însuși – nu te aștepta ca apelareaDocument.Save()să schimbe modul în care textul se înfășoară sau apare pe baza acestor setări, deoarece această ediție nu include motorul de layout al paginii.- Apelează
WriteProtection.SetPassword()înainte de a activaIsWriteProtectedși foloseșteValidatePassword()pentru a verifica o parolă candidat în loc să stochezi sau să compari tu însuți șirul brut. CompatibilityOptions,HyphenationOptions,MailMergeSettings,ViewOptionsșiWriteProtectionsunt toate accesibile direct dinDocument– nu este nevoie să cauți în arborele de noduri pentru ele.
Probleme comune
| Problemă | Cauză | Remediere |
|---|---|---|
CompatibilityOptions.OptimizeFor() aruncă NotImplementedException | Nu este implementat în această versiune | Setăți în schimb proprietățile booleene individuale CompatibilityOptions |
| Mail merge nu completează documentul cu date | MailMergeSettings stochează doar configurația de îmbinare; execuția nu este inclusă în această ediție | Citiți configurația sursei de date stocată și gestionați propria logică de populare a câmpurilor, sau utilizați versiunea comercială Aspose.Words pentru .NET |
Modificarea ViewOptions.ZoomPercent nu are niciun efect vizibil în timpul procesării documentului | ViewOptions afectează doar afișarea în Word, nu procesarea proprie a Aspose.Words FOSS | Comportament așteptat – nu este necesară nicio rezolvare |
WriteProtection.ValidatePassword() returnează false în mod neașteptat | SetPassword() nu a fost apelat prima dată, sau a fost setată o altă parolă | Apelă SetPassword() pentru a stabili parola protejată înainte de validare |
FAQ
Pot folosi Aspose.Words FOSS pentru a efectua o fuziune de corespondență reală?
Nu. MailMergeSettings și Odso vă permit să citiți și să scrieți configurația de îmbinare stocată într-un document, dar executarea unei îmbinări de corespondență – popularea câmpurilor dintr-o sursă de date – nu este inclusă în această ediție open-source.
Funcționează CompatibilityOptions.OptimizeFor()?
Nu – aruncă NotImplementedException în această versiune. În schimb, setați direct proprietățile individuale CompatibilityOptions de care aveți nevoie.
Cum pot proteja cu parolă un document împotriva editărilor?
Apelați WriteProtection.SetPassword() pe Document.WriteProtection, apoi setați IsWriteProtected pentru a activa protecția.
Modifică HyphenationOptions și ViewOptions modul în care este aranjat documentul?
Nu. Ambele sunt preferințe stocate pe care Microsoft Word le aplică când deschide și afișează fișierul. Această ediție nu include motorul de aranjare a paginii, așa că aceste setări trec prin el fără ca Aspose.Words FOSS să calculeze singur aranjamentul din ele.
API Reference Rezumat
| Clasă / Enum | Descriere: |
|---|---|
CompatibilityOptions | Comutatoare de aspect/spațiere pentru versiuni vechi de Word, prin Document.CompatibilityOptions |
Compatibility | Enum care denumește opțiunile individuale de compatibilitate |
MsWordVersion | Valorile versiunii Word utilizate de CompatibilityOptions.OptimizeFor() |
HyphenationOptions | Preferințe de despărțire în silabe, prin Document.HyphenationOptions |
MailMergeSettings | Configurație stocată de îmbinare prin corespondență, prin Document.MailMergeSettings |
Odso | Setări de conexiune ale Office Data Source Object pentru îmbinare prin corespondență |
OdsoFieldMapData / OdsoFieldMapDataCollection | Mapare coloană-câmp de îmbinare pentru o sursă de date ODSO |
OdsoRecipientData / OdsoRecipientDataCollection | Starea de includere/excludere per destinatar pentru un mail merge |
ViewOptions | Preferințele de afișare ale Word (zoom, semne de formatare), prin Document.ViewOptions |
WriteProtection | Starea de protecție la scriere a documentului, prin Document.WriteProtection |
MeasurementUnits | Unitatea de măsură pe care Word ar trebui să o folosească în interfața sa |