Работа със секции

Понякога искате документ, който няма едно и също форматиране на всички страници. Например може да се наложи да промените числовите формати на страниците, да имате различен размер на страницата и ориентация или да имате първата страница на документа като титулна страница без никакво номериране. Това може да се постигне с раздели.

Секциите са възли на ниво, които контролират горни и долни колонтитули, ориентация, колони, полета, форматиране на номера на страници и други.

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

Тази статия обяснява как да работите с раздели и раздели.

Какво е раздел и прекъсване на Раздел

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

Нов раздел е опция, която разделя страниците на документа на секции с персонализируеми оформления.

Типове на прекъсване на секция

Aspose.Words Позволява ви да разделяте и форматирате документи, като използвате различни прекъсвания на секциите на BreakType изброяване:

  • SectionBreakContinuous
  • SectionBreakNewColumn
  • SectionBreakNewPage
  • SectionBreakEvenPage
  • SectionBreakOddPage

Можете също да използвате изброяването SectionStart, за да изберете тип прекъсване, което се отнася само за първия раздел, като например NewColumn, NewPage, EvenPage, и OddPage.

Управление на секция

Тъй като дадена секция е нормален композитен възел, цялата манипулация на възел API може да се използва за манипулиране на секции: за добавяне, премахване и други операции върху секции. Можете да прочетете повече за възлите в статията Aspose.Words Документ Обектен Модел (DOM).

От друга страна, можете да използвате DocumentBuilder API за работа със секции. В тази статия ще се съсредоточим върху този конкретен начин на работа с раздели.

Вмъкване или премахване на нов раздел

Aspose.Words ви позволява да вмъкнете раздел в текста, като използвате метода InsertBreak.

Следващият пример за код показва как да вмъкнете нов раздел в документ:

Използвайте метода Remove, за да изтриете нов раздел. Ако не е необходимо да премахвате определен знак за нов раздел, а вместо това да изтриете съдържанието на този раздел, можете да използвате метода ClearContent.

Следващият пример за код показва как да премахнете прекъсванията на секциите:

Преместване на секция

Ако искате да преместите секция от една позиция в друга във вашия документ, трябва да получите индекса на тази секция. Aspose.Words ви позволява да получите позиция на секция от SectionCollection. Можете да използвате свойството Sections, за да получите всички раздели във вашия документ. Но ако искате да получите само първата секция, можете да използвате свойството FirstSection.

Следващият пример за код показва как да получите достъп до първата секция и да итерирате чрез децата на съставен възел:

Задаване на оформление на секция

Понякога искате документът ви да изглежда по-добре, като създавате творчески оформления за различни секции на документа. Ако искате да зададете типа на текущата мрежа на секцията, можете да изберете режим на оформление на секцията, като използвате изброяването SectionLayoutMode:

  • По подразбиране
  • Мрежа
  • LineGrid
  • SnapToChars

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

Редактиране на секция

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

Следващият пример за код показва как да подготвите нов възел на секция, като използвате EnsureMinimum:

Добавяне или предплащане на съдържание

Ако искате да нарисувате някаква фигура или да добавите текст или изображение в началото/края на секция, можете да използвате методите AppendContent и PrependContent от класа Section.

Следният пример за код показва как да добавите съдържание на съществуващ раздел:

Клон А секция

Aspose.Words ви позволява да дублирате секция, като създадете пълно копие от нея, като използвате метода Clone.

Следващият пример за код показва как да клонирате първата секция във вашия документ:

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

В някои случаи може да имате големи документи с много секции и искате да копирате съдържанието на секция от един документ в друг.

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

Следващият пример за код показва как да копирате раздели между документи:

Работа с горен и Долен колонтитул на секция

Основните правила за показване на горен или долен колонтитул за всеки раздел са доста прости.:

  1. Ако секцията няма собствени горни / долни колонтитули от определен тип, тогава тя е взета от предишния раздел.
  2. Типът на горния / долния колонтитул, показан на страницата, се контролира от настройките на секцията “различни първи страници” и “различни четни и нечетни страници” – ако са деактивирани, собствените заглавия на секцията се игнорират.

Следващият пример за код показва как да създадете 2 секции с различни заглавки:

Ако искате да премахнете текста на горни и долни колонтитули, без да премахвате HeaderFooter обекти във вашия документ, можете да използвате метода ClearHeadersFooters. Освен това можете да използвате метода DeleteHeaderFooterShapes, за да премахнете всички фигури от горни и долни колонтитули във вашия документ.

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

Следният пример код как да премахнете всички фигури от всички горни колонтитули в секция:

Персонализиране на свойствата на страницата в секция

Преди да отпечатате страница или документ, може да искате да персонализирате и промените размера и оформлението на една страница или целия документ. С настройката на страниците можете да промените настройките на страниците на документа, като полета, ориентация и размер за отпечатване на различни първи страници или нечетни страници.

Aspose.Words Позволява ви да персонализирате свойствата на страница и секция, като използвате класа PageSetup.

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

Следният пример за код показва как да промените свойствата на страницата във всички раздели:

Вижте Също