文档中节点的逻辑级别

本文档有时将一组节点类称为属于文档中的"级别",例如"块级别"、“内联级别”(也称为"内联")或"行级别"节点。 文档中的这些级别纯粹是在逻辑上区分的,并且没有通过继承或其他Aspose.WordsDOM表示。 节点级别用于描述文档树中节点通常出现的位置。

在上一篇文章中,我们已经谈到了节点之间的关系以及并非所有节点都被允许成为任何节点的子节点这一事实。 例如,Cell只能是行子项,行只能是表子项,依此类推。 这些关系也适用于将节点逻辑划分为文档中的级别。

以下各节描述Aspose.Words中节点的逻辑级别以及属于每个级别的类。

文档和节逻辑级别

一个Word文档由一个或多个部分组成,由Section类表示,并用节符分隔。 节可以定义自己的页面大小、边距、方向、文本列数以及页眉和页脚。

Document部分 级别节点的结构如下图所示。

document-and-section-level-aspose-words-cpp

一个部分包含主文本,以及第一页、偶数页和奇数页的页眉和页脚。 这些不同的文本"流"称为stories

在Aspose.Words中,Section节点包含BodyHeaderFooter故事节点。 Body对象存储主文本。 HeaderFooter对象存储每个页眉和页脚的文本。 任何故事的文本由段落和表格组成,分别由块级的ParagraphTable对象表示。

此外,每个Word文档都可以包含一个词汇表,该词汇表由Aspose.Words中的GlossaryDocument节点表示。 词汇表文档包含BuildingBlocksAutoTextAutoCorrect条目。

GlossaryDocument

块逻辑级别

块级节点表示内容和内容控件的容器,可以出现在以下节点中的文档树子节点中:

  • 身体
  • 标题
  • 页脚
  • 脚注
  • 评论
  • 形状
  • GroupShape
  • 细胞
  • StructuredDocumentTag

块级节点由以下类表示:

下图显示了块级元素。

block-level-aspose-words-cpp

内联逻辑级别

内联级节点表示文档的实际内容,可以包含在以下容器中:

  • 段落-最常见的容器
  • SmartTag
  • StructuredDocumentTag

内联级元素由以下类表示:

下图显示了内联级节点结构。

inline-level-aspose-words-cpp

表、行和单元格节点级别

该表由行和单元格的节点组成。 表元素由以下类表示:

  • Row表示表行
  • Cell表示表格单元格
  • StructuredDocumentTag表示自定义标记

下图显示了表、行和单元格级别的节点结构。

table-row-cell-aspose-words-cpp