Робота з секціями

Іноді ви хочете документ, який не має однакового форматування на всіх сторінках. Наприклад, ви можете змінити формати номерів сторінок, мати різний розмір сторінки та орієнтацію, або мати першу сторінку документа, як сторінка кришки без будь-якого номера. Ви можете досягти цього з секціями.

Секції - це рівні вузли, які контрольні заголовки та піддони, спрямованість, стовпчики, запаси, форматування номерів сторінок та інші.

Aspose.Words дозволяє керувати розділами, розділяти документ на розділи, а також здійснювати форматування змін, які застосовуються тільки в конкретному розділі. Aspose.Words зберігає інформацію про форматування розділів, таких як заголовки та піддони, налаштування сторінок та налаштування стовпців в розділі.

У статті описано, як працювати з розділами та перервами секцій.

Які розділи та розділи

Зрізи документів представлені Section і SectionCollection класи. Об’єкти секцій є безпосередніми дітьми Document Доступ до вузла і можна отримати через Sections майно. Ви можете керувати цими вузлами, використовуючи деякі методи, такі як Remove, Add, IndexOf, та інші.

Роздільна перерва - це варіант, який розділяє сторінки документів на розділи з налаштованими макетами.

Види секцій

Aspose.Words дозволяє розбити та форматувати документи за допомогою різних розділів BreakType заохочення:

  • СекціяБреакКонтинуус
  • Ім’я * СекціяБреакНовіКолумн
  • РозділБреакНовийПейдж
  • РозділБреакЗв’язатися
  • СекціяБреакОдддаПадж

Ви також можете використовувати SectionStart оберіть тип перерви, який застосовується тільки для першого розділу, таких як NewColumn, NewPage, вечірок і OddPage.

Управління секцією

Так як секція є нормальною композитною вершиною, вся маніпуляція вузлів API можна використовувати для маніпуляції секцій: для додавання, видалення та інших операцій на секціях. Детальніше про вузли в статті Aspose.Words Document Object Model (DOM)й

З іншого боку, ви також можете використовувати DocumentBuilder API працювати з секціями. У цій статті ми зосередимося на такому конкретному шляху роботи з розділами.

Вставити або видалити перерву секція

Aspose.Words дозволяє вставляти перерву в текст за допомогою InsertBreak метод.

Приклад наступного коду показує, як вставити перерву розділу в документ:

Використання Remove спосіб видалити перерву розділу. Якщо ви не повинні видалити конкретну перерву розділу і замість видалення вмісту цього розділу, ви можете використовувати ClearContent метод.

Приклад коду показує, як видалити перерву секцій:

Перемістити розділ

Якщо ви хочете перемістити розділ з одного положення в інший документ, вам потрібно отримати індекс цього розділу. Aspose.Words дозволяє отримати позицію з розділу SectionCollection за допомогою використання Item майно. Ви можете використовувати Sections отримайте всі розділи в документі. Але якщо ви хочете отримати тільки перший розділ, ви можете використовувати FirstSection майно.

Наприклад, наступний код показує, як отримати доступ до першого розділу і протерти через дітей композитного вузла:

Вкажіть розділ Layout

Якщо ви хочете, щоб ваш документ краще виглядати, зробивши творчі макети для різних розділів документів. Якщо ви хочете вказати тип сітки поточного розділу, ви можете вибрати режим макета розділу за допомогою SectionLayoutMode заохочення:

  • Ім’я *
  • Сітка
  • Лінійка
  • SnapToChars

Приклад коду показує, як обмежити кількість рядків, які кожна сторінка може мати:

Редагування розділу

Коли ви додаєте новий розділ до вашого документа, немає тіла або пункту, який ви можете редагувати. Aspose.Words дозволяє гарантувати, що розділ містить тіло з принаймні одним пунктом, використовуючи EnsureMinimum метод – він автоматично додасть Body (або HeaderFooter) вершину до документа, а потім додайте параметр до нього.

Приклад наступного коду показує, як підготувати новий вузол розділу за допомогою EnsureMinimum:

Додаток або попередній контент

Якщо ви хочете малювати певну форму або додати текст або зображення на початку/кінець розділу, ви можете використовувати AppendContent і PrependContent методи Section клас.

Приклад коду показує, як застосувати вміст існуючого розділу:

Клон секція

Aspose.Words дозволяє дублювати розділ, створивши повну копію його за допомогою Clone метод.

Приклад коду показує, як клонувати перший розділ у вашому документі:

Копіювати розділи між документами

У деяких випадках ви можете мати великі документи з багатьма розділами, і ви хочете копіювати вміст розділу з одного документа в інший.

Aspose.Words дозволяє копіювати розділи між документами ImportNode метод.

Приклад коду показує, як копіювати розділи між документами:

Робота з головуванням секцій та нижньою колонкою

Основні правила відображення заголовка або нижній колонтитул для кожного розділу досить прості:

1,1 км Якщо секція не має власних голів / ботів певного типу, то вона береться з попереднього розділу. 2,2 км Тип заголовка / нижній колонтитула, що відображається на сторінці, здійснюється за допомогою розділу “Different First Page” та “Different Odd & Навіть сторінки” - якщо вони вимкнені, то заголовки розділу ігноруються.

Приклад коду показує, як створити 2 розділи з різними заголовками:

Якщо ви хочете видалити текст заголовків і нижніх колонок без видалення HeaderFooter об’єкти у вашому документі можна використовувати ClearHeadersFooters метод. Крім того, можна використовувати DeleteHeaderFooterShapes спосіб видалити всі форми з заголовків і піддонів у вашому документі.

Приклад коду показує, як очистити вміст всіх заголовків і нижніх колонок в розділі:

Приклад наступного коду, як видалити всі форми з усіх піддонів заголовків в розділі:

Налаштування властивостей сторінок в розділі

Перед тим як друкувати сторінку або документ, який ви можете налаштувати і змінити розмір і макет однієї сторінки або цілого документа. З налаштуванням сторінки ви можете змінити налаштування сторінок документів, таких як поля, орієнтація та розмір для друку різних сторінок або непарних сторінок.

Aspose.Words дозволяє налаштовувати властивості сторінок та розділів за допомогою PageSetup клас.

Приклад коду показує, як встановити такі властивості, як розмір сторінки та спрямованість на поточний розділ:

Приклад коду показує, як змінити властивості сторінок у всіх розділах:

Дивитися ще