Работа с разделами

Иногда вам нужен документ, который не имеет одинакового форматирования на всех страницах. Например, вам может потребоваться изменить форматы номеров страниц, иметь различный размер страницы и ориентацию или иметь первую страницу документа в качестве обложки без какой-либо нумерации. Это можно сделать с помощью разделов.

Секции - это узлы уровня, которые контролируют заголовки и нижние колонки, ориентацию, столбцы, поля, форматирование номеров страниц и другие.

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

В этой статье объясняется, как работать с разделами и разделами перерывов.

Что такое секция и секционный перерыв

Разделы документов представлены Section и SectionCollection классы. Объекты секции являются непосредственными детьми Document Узел и может быть доступен через Sections собственность. Вы можете управлять этими узлами, используя некоторые методы, такие как: Remove, Add, IndexOf, и другие.

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

Типы разрыва раздела

Aspose.Words позволяет разделять и форматировать документы с использованием различных разделов BreakType перечисление:

  • Непрерывный разрыв
  • Обсуждение SectionBreakNewColumn
  • SectionBreakNewPage
  • Скачать SectionBreakEvenPage
  • SectionBreakOddPage

Вы также можете использовать SectionStart Перечисление для выбора типа перерыва, который применяется только для первого раздела, такого как NewColumn, NewPage, EvenPage и OddPage.

Управлять секцией

Поскольку секция является обычным составным узлом, вся манипуляция узлом API Может использоваться для манипулирования секциями: для добавления, удаления и других операций на секциях. Подробнее о узлах можно прочитать в статье Aspose.Words Document Object Model (DOM).

С другой стороны, вы также можете использовать DocumentBuilder API Работать с разделами. В этой статье мы сосредоточимся на этом конкретном способе работы с разделами.

Вставить или удалить раздел Break

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

Следующий пример кода показывает, как вставить разрыв раздела в документ:

Используйте Remove Способ удаления разрыва раздела. Если вам не нужно удалять определенный разрыв раздела и вместо этого удалять содержимое этого раздела, вы можете использовать ClearContent метод.

Следующий пример кода показывает, как удалить разрывы разделов:

Переместить раздел

Если вы хотите перенести раздел из одной позиции в другую в своем документе, вам нужно получить индекс этого раздела. Aspose.Words позволяет получить позицию раздела из SectionCollection. Вы можете использовать Sections Имущество, чтобы получить все разделы в вашем документе. Но если вы хотите получить только первый раздел, вы можете использовать FirstSection собственность.

Следующий пример кода показывает, как получить доступ к первому разделу и повторить через детей композитного узла:

Укажите план раздела

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

  • По умолчанию
  • Сетка
  • LineGrid
  • SnapToChars

Следующий пример кода показывает, как ограничить количество строк, которые может иметь каждая страница:

Редактировать раздел

Когда вы добавляете новый раздел в свой документ, не будет никакого текста или абзаца, который вы можете отредактировать. Aspose.Words позволяет гарантировать, что раздел содержит тело с по меньшей мере одним абзацем, используя EnsureMinimum метод - он автоматически добавит в документ узел Body (или HeaderFooter), а затем добавит в него Параграф.

Следующий пример кода показывает, как подготовить новый узел раздела с помощью EnsureMinimum:

Добавить или подготовить контент

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

Следующий пример кода показывает, как добавить содержимое существующего раздела:

Клонировать секцию

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

Следующий пример кода показывает, как клонировать первый раздел в вашем документе:

Разделы копирования между документами

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

Aspose.Words позволяет копировать разделы между документами, используя ImportNode метод.

Следующий пример кода показывает, как копировать разделы между документами:

Работа с заголовком раздела и фойе

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

  1. Если раздел не имеет собственных заголовков/футов определенного типа, то он взят из предыдущего раздела.
  2. Тип заголовка / футера, отображаемого на странице, контролируется настройками разделов “Разные первые страницы” и “Разные странные и даже страницы” - если они отключены, то собственные заголовки раздела игнорируются.

Следующий пример кода показывает, как создать 2 раздела с разными заголовками:

Если вы хотите удалить текст заголовков и футеров без удаления HeaderFooter объекты в вашем документе, вы можете использовать ClearHeadersFooters метод. Кроме того, вы можете использовать DeleteHeaderFooterShapes Способ удаления всех форм из заголовков и нижних колонок в вашем документе.

Следующий пример кода показывает, как очистить содержимое всех заголовков и нижних колонок в разделе:

Следующий пример кода, как удалить все формы из всех нижних колонтитулов в разделе:

Настройка свойств страницы в разделе

Перед печатью страницы или документа вы можете настроить и изменить размер и макет одной страницы или всего документа. При настройке страницы вы можете изменить настройки страниц документа, такие как поля, ориентация и размер для печати разных первых страниц или нечетных страниц.

Aspose.Words позволяет настраивать свойства страниц и разделов с помощью PageSetup класс.

Следующий пример кода показывает, как установить такие свойства, как размер страницы и ориентация для текущего раздела:

Следующий пример кода показывает, как изменить свойства страницы во всех разделах:

Смотрите также