класс Aspose::Words::Section

Section class

Представляет одну секцию в документе. Чтобы узнать больше, посетите статью документации Working with Sections.

class Section : public Aspose::Words::CompositeNode,
                public Aspose::Words::ISectionAttrSource

Методы

МетодОписание
Accept(System::SharedPtr<Aspose::Words::DocumentVisitor>) overrideПринимает посетителя.
AcceptEnd(System::SharedPtr<Aspose::Words::DocumentVisitor>) overrideКогда реализовано в производном классе, вызывает метод VisitXXXEnd указанного посетителя документа.
AcceptStart(System::SharedPtr<Aspose::Words::DocumentVisitor>) overrideКогда реализовано в производном классе, вызывает метод VisitXXXStart указанного посетителя документа.
AppendChild(T)
AppendContent(const System::SharedPtr<Aspose::Words::Section>&)Вставляет копию содержимого исходного раздела в конец этого раздела.
ClearContent()Очищает раздел.
ClearHeadersFooters()Очищает колонтитулы (верхний и нижний) этого раздела.
ClearHeadersFooters(bool)Очищает колонтитулы (верхний и нижний) этого раздела.
Clone()Создаёт дубликат этого раздела.
Clone(bool)Создаёт дубликат узла.
DeleteHeaderFooterShapes()Удаляет все фигуры (объекты рисования) из колонтитулов этого раздела.
EnsureMinimum()Обеспечивает наличие у раздела Body с одним Paragraph.
get_Body()Возвращает дочерний узел Body раздела.
get_Count()Возвращает количество непосредственных дочерних элементов этого узла.
get_CustomNodeId() constУказывает пользовательский идентификатор узла.
virtual get_Document() constВозвращает документ, к которому принадлежит этот узел.
get_FirstChild() constВозвращает первого дочернего узла.
get_HasChildNodes()Возвращает true, если у этого узла есть дочерние узлы.
get_HeadersFooters()Предоставляет доступ к узлам колонтитулов раздела.
get_IsComposite() overrideВозвращает true, поскольку этот узел может иметь дочерние узлы.
get_LastChild() constВозвращает последнего дочернего узла.
get_NextNode() const
get_NextSibling()Возвращает узел, непосредственно следующий за этим узлом.
get_NodeType() const overrideВозвращает Section.
get_PageSetup()Возвращает объект, представляющий настройки страницы и свойства раздела.
get_ParentNode()Возвращает непосредственного родителя этого узла.
get_PreviousSibling()Возвращает узел, непосредственно предшествующий этому узлу.
get_PrevNode() const
get_ProtectedForForms()Истина, если раздел защищён для форм. Когда раздел защищён для форм, пользователи могут выделять и изменять текст только в полях формы в Microsoft Word.
get_Range()Возвращает объект Range, представляющий часть документа, содержащуюся в этом узле.
GetAncestor(Aspose::Words::NodeType)Получает первого предка указанного NodeType.
GetAncestorOf()
GetChild(Aspose::Words::NodeType, int32_t, bool)Возвращает N‑й дочерний узел, соответствующий указанному типу.
GetChildNodes(Aspose::Words::NodeType, bool)Возвращает живую коллекцию дочерних узлов, соответствующих указанному типу.
GetEnumerator() overrideОбеспечивает поддержку итерации в стиле foreach по дочерним узлам этого узла.
GetText() overrideПолучает текст этого узла и всех его дочерних узлов.
GetType() const override
IndexOf(const System::SharedPtr<Aspose::Words::Node>&)Возвращает индекс указанного дочернего узла в массиве дочерних узлов.
InsertAfter(T, const System::SharedPtr<Aspose::Words::Node>&)
InsertBefore(T, const System::SharedPtr<Aspose::Words::Node>&)
Is(const System::TypeInfo&) const override
IsAncestorNode(const System::SharedPtr<Aspose::Words::Node>&)
NextPreOrder(const System::SharedPtr<Aspose::Words::Node>&)Получает следующий узел согласно алгоритму обхода дерева в порядке предобхода.
static NodeTypeToString(Aspose::Words::NodeType)Вспомогательный метод, преобразующий значение перечисления типа узла в удобочитаемую строку.
PrependChild(T)
PrependContent(const System::SharedPtr<Aspose::Words::Section>&)Вставляет копию содержимого исходного раздела в начало этого раздела.
PreviousPreOrder(const System::SharedPtr<Aspose::Words::Node>&)Получает предыдущий узел согласно алгоритму обхода дерева в порядке предобхода.
Remove()Удаляет себя из родительского узла.
RemoveAllChildren()Удаляет все дочерние узлы текущего узла.
RemoveChild(T)
RemoveSmartTags()Удаляет все дочерние узлы SmartTag текущего узла.
Section(const System::SharedPtr<Aspose::Words::DocumentBase>&)Инициализирует новый экземпляр класса Section.
SelectNodes(const System::String&)Выбирает список узлов, соответствующих XPath-выражению.
SelectSingleNode(const System::String&)Выбирает первый Node, который соответствует выражению XPath.
set_CustomNodeId(int32_t)Сеттер для Aspose::Words::Node::get_CustomNodeId.
set_NextNode(const System::SharedPtr<Aspose::Words::Node>&)
set_PrevNode(const System::SharedPtr<Aspose::Words::Node>&)
set_ProtectedForForms(bool)Сеттер для Aspose::Words::Section::get_ProtectedForForms.
SetParent(const System::SharedPtr<Aspose::Words::Node>&)
SetTemplateWeakPtr(uint32_t) override
ToString(Aspose::Words::SaveFormat)Экспортирует содержимое узла в строку в указанном формате.
ToString(const System::SharedPtr<Aspose::Words::Saving::SaveOptions>&)Экспортирует содержимое узла в строку, используя указанные параметры сохранения.
static Type()

Примечания

Section can have one Body and maximum one HeaderFooter of each HeaderFooterType. Body and HeaderFooter nodes can be in any order inside Section.

Минимальный корректный раздел должен содержать Body с одним Paragraph.

Каждый раздел имеет собственный набор свойств, определяющих размер страницы, ориентацию, поля и т.д.

Вы можете создать копию раздела с помощью Clone(). Копию можно вставить в тот же документ или в другой.

Чтобы добавить, вставить или удалить целый раздел, включая разрыв раздела и свойства раздела, используйте методы объекта Sections.

Чтобы скопировать и вставить только содержимое раздела без разрыва раздела и его свойств, используйте методы AppendContent() и PrependContent().

Примеры

Показывает, как вручную построить документ Aspose.Words.

auto doc = System::MakeObject<Aspose::Words::Document>();

// Пустой документ содержит один раздел, одно тело и один абзац.
// Вызовите метод "RemoveAllChildren", чтобы удалить все эти узлы,
// и в результате получите узел документа без дочерних элементов.
doc->RemoveAllChildren();

// У этого документа теперь нет составных дочерних узлов, к которым мы могли бы добавить содержимое.
// Если мы захотим отредактировать его, нам потребуется заново заполнить его коллекцию узлов.
// Сначала создайте новый раздел, а затем добавьте его как дочерний элемент к корневому узлу документа.
auto section = System::MakeObject<Aspose::Words::Section>(doc);
doc->AppendChild<System::SharedPtr<Aspose::Words::Section>>(section);

// Установите некоторые свойства разметки страницы для раздела.
section->get_PageSetup()->set_SectionStart(Aspose::Words::SectionStart::NewPage);
section->get_PageSetup()->set_PaperSize(Aspose::Words::PaperSize::Letter);

// Разделу требуется тело, которое будет содержать и отображать всё его содержимое
// на странице между заголовком и нижним колонтитулом раздела.
auto body = System::MakeObject<Aspose::Words::Body>(doc);
section->AppendChild<System::SharedPtr<Aspose::Words::Body>>(body);

// Создайте абзац, задайте некоторые свойства форматирования и затем добавьте его как дочерний элемент к телу.
auto para = System::MakeObject<Aspose::Words::Paragraph>(doc);

para->get_ParagraphFormat()->set_StyleName(u"Heading 1");
para->get_ParagraphFormat()->set_Alignment(Aspose::Words::ParagraphAlignment::Center);

body->AppendChild<System::SharedPtr<Aspose::Words::Paragraph>>(para);

// Наконец, добавьте некоторое содержимое в документ. Создайте объект Run,
// задайте его внешний вид и содержимое, а затем добавьте его как дочерний элемент к абзацу.
auto run = System::MakeObject<Aspose::Words::Run>(doc);
run->set_Text(u"Hello World!");
run->get_Font()->set_Color(System::Drawing::Color::get_Red());
para->AppendChild<System::SharedPtr<Aspose::Words::Run>>(run);

ASSERT_EQ(u"Hello World!", doc->GetText().Trim());

doc->Save(get_ArtifactsDir() + u"Section.CreateManually.docx");

См. также