Як працювати з налаштуваннями документа у .NET
У цьому посібнику показано, як працювати з налаштуваннями документу на рівні застосунку у Aspose.Words FOSS для .NET: перемикачі сумісності зі старими версіями, налаштування перенесення слів, збережену конфігурацію поштового злиття, параметри перегляду та захист від запису. Aspose.Words FOSS для .NET доступний через NuGet або шляхом збірки з вихідних кодів.
Покроковий посібник
Крок 1: Отримати бібліотеку
Клонуйте репозиторій і збирайте Aspose.Words.sln у конфігурації Release, потім додайте посилання на проект Aspose.Words.csproj з вашого власного проекту .NET, як описано в Посібнику з встановлення. Додайте using Aspose.Words; and using Aspose.Words.Settings; на початку будь-якого файлу, який читає або записує налаштування документа.
Крок 2: Встановити параметри сумісності зі старими версіями
Document.CompatibilityOptions (екземпляр CompatibilityOptions) містить десятки булевих перемикачів, які відтворюють певну поведінку розмітки та інтервалів у старих версіях Word — наприклад GrowAutofit, UseWord2010TableStyleRules, AdjustLineHeightInTable, AlignTablesRowByRow, NoExtraLineSpacing, SuppressSpacingAtTopOfPage та SpacingInWholePoints. Встановлюйте потрібні індивідуальні властивості безпосередньо; OptimizeFor(MsWordVersion) присутній у класі, але в цій збірці викидає NotImplementedException, тому немає швидкого способу застосувати цілий профіль версії одразу.
Крок 3: Налаштування параметрів перенесення слів
Document.HyphenationOptions (екземпляр HyphenationOptions) зберігає параметри перенесення слів Word для документа: AutoHyphenation, ConsecutiveHyphenLimit, HyphenateCaps та HyphenationZone. Ці властивості проходять цикл запиту у збереженому файлі; оскільки у цьому випуску немає движка розкладки сторінок, самі точки перенесення обчислюються Word під час відкриття та пагінації файлу, а не Aspose.Words FOSS.
Крок 4: Читання та запис конфігурації злиття листів
Document.MailMergeSettings (екземпляр MailMergeSettings) зберігає конфігурацію злиття листів, записану в документі — MainDocumentType, CheckErrors, Destination, DataSource, DataType, Query, ConnectString, MailSubject, MailAsAttachment, ActiveRecord та ViewMergedData — а також Clear() і Clone(). Для зовнішнього джерела даних, підключеного через механізм Office Data Source Object Word, MailMergeSettings.Odso надає екземпляр Odso (DataSource, DataSourceType, TableName, ColumnDelimiter, FirstRowContainsColumnNames), чия колекції FieldMapDatas і RecipientDatas описують зіставлення полів та список одержувачів. Читання та запис цієї збереженої конфігурації доступні у цьому випуску з відкритим кодом; виконання самого злиття проти живого джерела даних є окремим питанням, що виходить за межі даної сторінки.
Крок 5: Налаштування параметрів перегляду документа
Document.ViewOptions (екземпляр ViewOptions) керує тим, як Word відображає файл після відкриття: ViewType, ZoomType, ZoomPercent, DisplayBackgroundShape, DoNotDisplayPageBoundaries та FormsDesign. Ці властивості є збереженими налаштуваннями, які впливають лише на відображення документа у Word — вони не впливають на те, як Aspose.Words FOSS сам обробляє його.
Крок 6: Застосування захисту від запису
Document.WriteProtection (екземпляр WriteProtection) надає IsWriteProtected і ReadOnlyRecommended, з SetPassword() для встановлення пароля захисту та ValidatePassword() для перевірки кандидатного пароля. Викличте SetPassword() перед встановленням IsWriteProtected = true і використовуйте ValidatePassword() замість того, щоб самостійно зберігати або порівнювати рядок пароля.
Поширені проблеми та виправлення
CompatibilityOptions.OptimizeFor() throws NotImplementedException. Цей метод не реалізовано в цій збірці. Встановіть окремі CompatibilityOptions булеві властивості, які вам потрібні, безпосередньо замість цього.
Changing ViewOptions.ZoomPercent не має видимого впливу на згенерований вихід. ViewOptions є збереженим параметром відображення, який читає Word, а не те, що Aspose.Words FOSS сам застосовує під час обробки. Виправлення не потрібно — це очікувана поведінка.
WriteProtection.ValidatePassword() неочікувано повертає false. SetPassword() ніколи не викликався, або був встановлений інший пароль. Викличте SetPassword() спочатку, щоб встановити захищений пароль перед перевіркою.
Конфігурація злиття листів збережена, але злиття не виконується. MailMergeSettings and Odso зберігає лише конфігурацію злиття; ця версія з відкритим кодом не виконує саме злиття. Прочитайте збережену конфігурацію та використайте її у власній логіці заповнення полів.
Часті питання
Чи працює CompatibilityOptions.OptimizeFor()?
Ні — у цій збірці він генерує NotImplementedException. Встановіть окремі потрібні вам властивості CompatibilityOptions безпосередньо.
Як захистити документ паролем від редагування?
Викличте WriteProtection.SetPassword() на Document.WriteProtection, потім встановіть IsWriteProtected, щоб увімкнути захист.
Чи змінюють HyphenationOptions та ViewOptions вигляд документа, коли Aspose.Words FOSS обробляє його?
Ні. Обидва — це збережені налаштування, які Word застосовує під час відкриття та відображення файлу; ця версія не має движка розкладки сторінок, щоб безпосередньо працювати з ними.
Де знайти конфігурацію джерела даних mail-merge для зовнішнього джерела даних?
MailMergeSettings.Odso — його колекції FieldMapDatas та RecipientDatas описують зіставлення стовпців і стан включення одержувачів.
У чому різниця між Document.CompatibilityOptions та Document.ViewOptions?
CompatibilityOptions перемикачі відтворюють старі особливості розмітки та інтервалів Word; ViewOptions контролює, як інтерфейс Word відображає файл (масштаб, знаки форматування). Жодне з них не обчислюється самим Aspose.Words FOSS.