Логічні рівні вузлів у документі
У цій документації іноді згадується група КЛАСІВ вузлів, що відносяться до" рівня “в документі, наприклад, вузли” рівня блоків"," вбудованого рівня “(також відомі як” вбудовані") або"рівня рядків". Ці рівні в документі різняться чисто логічно і не виражаються явно за допомогою успадкування або іншими способами Aspose.Words DOM. Рівень вузла використовується для опису місця в дереві документа, де зазвичай знаходиться вузол.
У попередній статті ми вже говорили про взаємозв’язок між вузлами і про те, що не всім вузлам дозволено бути дочірніми по відношенню до будь-яких вузлів. Наприклад, комірка може бути дочірньою лише по відношенню до рядка, А рядок може бути дочірньою лише по відношенню до таблиці тощо. Ці взаємозв’язки також застосовні для логічного поділу вузлів на рівні в документі.
У наступних розділах описуються логічні рівні вузлів в Aspose.Words і класи, що належать кожному рівню.
Логічний рівень документа та розділу
Документ Word складається з одного або декількох розділів, представлених класом Section і розділених розділовими смугами. Розділ може сам визначати розмір сторінки, поля, орієнтацію, кількість текстових стовпців, а також верхні і нижні колонтитули.
Document і Розділ вузли рівня мають структуру, показану на наступній діаграмі.
Розділ містить основний текст, а також колонтитули для першої, парної та непарної сторінок. Ці різні “потоки” тексту називаються stories.
У Aspose.Words вузол Section містить вузли історії Body та HeaderFooter. Об’єкт Body зберігає основний текст. Об’єкти HeaderFooter зберігають текст для кожного верхнього та нижнього колонтитулів. Текст будь-якої статті складається з абзаців і таблиць, відповідно представлених об’єктами Paragraph і Table рівня блоків.
Крім того, кожен документ Word може містити глосарій, який представлений вузлом GlossaryDocument в Aspose.Words. Документ-глосарій містить записи BuildingBlocks, AutoText і AutoCorrect.
GlossaryDocument
Логічний рівень блоку
Вузли блокового рівня-це контейнери для вмісту та елементів керування вмістом і можуть зустрічатися в дочірніх вузлах дерева документів у наступних вузлах:
- Тіло
- Заголовок
- Нижній колонтитул
- Виноска
- Коментар
- Форма
- GroupShape
- Клітина
- StructuredDocumentTag
Вузли блочного рівня представлені наступними класами:
- Tables та Paragraphs, які є найважливішими вузлами рівня блоку
- Закладки, які виконуються як на рівні блоків, так і на вбудованому рівні
- StructuredDocumentTag, які є Користувацькою розміткою і можуть містити як вміст, так і елементи керування вмістом
На наступній діаграмі Показані елементи блочного рівня.
Вбудований логічний рівень
Вузли вбудованого рівня представляють фактичний вміст документа і можуть міститися в наступних контейнерах:
- Абзац-найпоширеніший контейнер
- SmartTag
- StructuredDocumentTag
Елементи вбудованого рівня представлені наступними класами:
- Run - фрагменти тексту, відформатовані по-різному
- BookmarkStart і BookmarkEnd являють собою закладки
- CommentRangeStart, CommentRangeEnd, Comment і Footnote являють собою анотації
- FieldStart, FieldChar, FieldSeparator і FieldEnd, які представляють символи полів, а FormField представляють Word полів
- SpecialChar представляє спеціальні символи в документі
- Shape і GroupShape являють собою форми, малюнки, зображення і т. д.
- SmartTag та StructuredDocumentTag представляють спеціальну розмітку
На наступній діаграмі показана структура вузлів вбудованого рівня.
Фігури в Microsoft Word включають Office Art AutoShapes, текстові поля, зображення, об’єкти OLE та елементи керування ActiveX, усі представлені за допомогою класу Shape
. Деякі фігури також можуть містити текст, тому вузли фігур у Aspose.Words можуть містити вузли на рівні блоків.
Фігури можуть бути згруповані один всередині одного за допомогою вузлів GroupShape.
Рівень вузлів таблиць, рядків і комірок
Таблиця складається з вузлів рядків і осередків. Елементи таблиці представлені наступними класами:
- Row представляє рядок таблиці
- Cell являє собою комірку таблиці
- StructuredDocumentTag представляє спеціальну розмітку
Наступна діаграма показує структури вузлів на рівні таблиці, рядка та комірки.