Niveaux logiques des nœuds dans un document

Cette documentation fait parfois référence à un groupe de classes de nœuds comme appartenant à un “niveau” dans un document, tel que des nœuds de “niveau bloc”, de “niveau en ligne” (également appelés “en ligne”) ou de “niveau ligne”. Ces niveaux dans un document sont différenciés de manière purement logique et ne sont pas explicitement exprimés par héritage ou d’autres moyens Aspose.Words DOM. Le niveau du nœud est utilisé pour décrire l’endroit dans l’arborescence du document où le nœud se produirait généralement.

Dans l’article précédent, nous avons déjà parlé de la relation entre les nœuds et du fait que tous les nœuds ne sont pas autorisés à être des enfants de nœuds. Par exemple, Cell ne peut être qu’un enfant de ligne, et une Ligne ne peut être qu’un enfant de table, et ainsi de suite. Ces relations sont également applicables pour la division logique des nœuds en niveaux dans le document.

Les sections suivantes décrivent les niveaux logiques des nœuds dans Aspose.Words et les classes qui appartiennent à chaque niveau.

Niveau logique du Document et de la Section

Un document Word se compose d’une ou plusieurs sections, représentées par la classe Section et séparées par des sauts de section. Une section peut définir sa propre taille de page, ses marges, son orientation, le nombre de colonnes de texte et ses en-têtes et pieds de page.

Document et Rubrique les nœuds de niveau ont la structure illustrée dans le diagramme suivant.

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

Une section contient le texte principal, ainsi que des en-têtes et des pieds de page pour les premières pages paires et impaires. Ces différents “flux” de texte sont appelés stories.

Dans Aspose.Words, le nœud Section contient les nœuds d’histoire Body et HeaderFooter. L’objet Body stocke le texte principal. Les objets HeaderFooter stockent le texte de chaque en-tête et pied de page. Le texte de toute histoire se compose de paragraphes et de tableaux, respectivement représentés par les objets Paragraph et Table du niveau Bloc.

De plus, chaque document Word peut contenir un glossaire, qui est représenté par le nœud GlossaryDocument dans Aspose.Words. Un document glossaire contient des entrées BuildingBlocks, AutoText et AutoCorrect.

GlossaryDocument

Niveau Logique de Bloc

Les nœuds de niveau bloc représentent des conteneurs pour le contenu et les contrôles de contenu, et peuvent apparaître dans les nœuds enfants de l’arborescence de documents dans les nœuds suivants:

  • Corps
  • En-tête
  • Pied de Page
  • Note de Bas de Page
  • Commentaire
  • Forme
  • GroupShape
  • Cellule
  • StructuredDocumentTag

Les nœuds de niveau bloc sont représentés par les classes suivantes:

  • Tables et Paragraphs, qui sont les nœuds les plus importants au niveau du bloc
  • Les signets, qui se produisent à la fois au niveau du bloc et au niveau en ligne
  • StructuredDocumentTag, qui représentent un balisage personnalisé et peuvent contenir à la fois du contenu et des contrôles de contenu

Le diagramme suivant montre les éléments au niveau du bloc.

block-level-aspose-words-cpp

Niveau Logique en Ligne

Les nœuds de niveau en ligne représentent le contenu réel du document et peuvent être contenus dans les conteneurs suivants:

  • Paragraphe-le conteneur le plus courant
  • SmartTag
  • StructuredDocumentTag

Les éléments de niveau en ligne sont représentés par les classes suivantes:

Le diagramme suivant montre la structure des nœuds de niveau en ligne.

inline-level-aspose-words-cpp

Niveau des nœuds de Table, de ligne et de cellule

Le tableau se compose de nœuds de lignes et de cellules. Les éléments de tableau sont représentés par les classes suivantes:

  • Row représente une ligne de tableau
  • Cell représente une cellule de tableau
  • StructuredDocumentTag représente un balisage personnalisé

Le diagramme suivant montre les structures des nœuds des niveaux Table, Ligne et cellule.

table-row-cell-aspose-words-cpp