Niveluri logice ale nodurilor într-un document
Această documentație se referă uneori la un grup de clase de noduri ca aparținând unei “niveluri” într-un document, cum ar fi “blocare nivel”, “nivel în linie” (de asemenea cunoscut sub numele de “în linie”) sau “rândul nivelului”. Aceste niveluri într-un document sunt diferențiate pur logic și nu sunt exprimate în mod explicit prin moștenire sau alte Aspose.Words DOM mijloace. Nivelul nodului se foloseşte pentru a descrie locul din arborele de documente unde ar apărea în mod tipic nodul.
În articolul precedent am discutat deja despre relaţia dintre noduri şi faptul că nu toate nodurile sunt permise să fie copil al oricărui nod. De exemplu, o celulă poate fi doar un copil de rând, iar un rând poate fi doar un copil de tabel și așa mai departe. “Aceste relații sunt aplicabile și pentru divizarea logică a nodurilor în niveluri în cadrul documentului.”
Secțiunile următoare descriu nivelurile logice ale nodurilor în Aspose.Words și clasele care aparțin fiecărui nivel.
Nivelul logic al documentului și secțiunii
Un document Word constă dintr-una sau mai multe secţiuni, reprezentate de clasa Section şi separate prin întreruperi de secţiune. O secțiune poate defini propria dimensiune a paginii, marginile, orientarea, numărul de coloane de text și anteturi și subsoluri.
Document și Section noduri de nivel au structura așa cum se arată în diagrama următoare.
O secțiune conține textul principal, precum și anteturi și subsoluri pentru prima, a doua și a treia pagini. Aceste diferite “fluxuri” de text sunt numite stories.
În Aspose.Words, nodul Section conține nodurile de poveste Body și HeaderFooter. Obiectul Body stochează textul principal. Cele HeaderFooter obiecte stochează textul pentru fiecare antet și subsol. Textul fiecărei povești constă din paragrafe și tabele, respectiv reprezentate de obiectele Paragraph și Table ale clasei “Block-level.
În plus, fiecare document Word poate conține un glosar, care este reprezentat de GlossaryDocument nod în Aspose.Words. Un document de glosar conține BuildingBlocks, AutoText și AutoCorrect intrări.
GlossaryDocument include BuildingBlock noduri reprezentând diferite tipuri de intrări în dicționar. Fiecare BuildingBlock conține secțiuni care pot fi inserate, eliminate și copiate în documente.
Nivel logic al blocului
“nodurile de nivel bloc reprezintă containere pentru conținut și controale de conținut și pot apărea în nodurile copil ale arborelui de documente în următoarele noduri:”
- Corpul
- antet
- Footer
- Nota de subsol
- Comentariu
- Forma
- GroupShape
- Celulă
- StructuredDocumentTag
Nodele de nivel bloc sunt reprezentate de următoarele clase:
- Tables și Paragraphs, care sunt nodurile de nivel bloc cele mai importante
- Bookmarkuri, care apar atât la nivel de bloc cât și la nivel inline
- StructuredDocumentTag, care reprezintă marcaje personalizate și pot conține atât conținut, cât și controale de conținut
Diagrama de mai jos prezintă elementele la nivel de bloc.
Nivel logic inlinat
Node-urile în linie reprezintă conținutul efectiv al documentului și pot fi conținute în următoarele containere:
- Paragraful – cel mai comun recipient
- SmartTag
- StructuredDocumentTag
Elementele inline sunt reprezentate de următoarele clase:
- Run – repetiții de text formatate diferit
- BookmarkStart și BookmarkEnd reprezintă marcaje – CommentRangeStart, CommentRangeEnd, Comment și Footnote reprezintă anotații
- FieldStart, FieldChar, FieldSeparator și FieldEnd care reprezintă caracterele de câmp, și FormField reprezintă câmpurile de cuvânt “- SpecialChar reprezintă caracterele speciale în document”
- Shape și GroupShape reprezintă forme, desene, imagini, etc.
- SmartTag și StructuredDocumentTag reprezintă marcaj personalizat
Diagrama de mai jos arată structura nodurilor în linie.
Formele din Microsoft Word includ Artea de birou AutoShape, cutii de text, imagini, obiecte OLE și controale ActiveX, toate reprezentate folosind clasa Shape
. Unele forme pot conține și text, astfel încât nodurile de “Shape” din Aspose.Words pot conține noduri de nivel bloc.
Formele pot fi grupate unele în interiorul altora folosind GroupShape noduri.
Nivelul nodului Tabel, Rând și Celulă
Masa este alcătuită din noduri de rând și celule. Elementele tabelelor sunt reprezentate de următoarele clase:
“- Row reprezintă un rând de tabel”
- Cell reprezintă o celulă de tabelă
- StructuredDocumentTag reprezintă marcaj personalizat
Diagrama de mai jos prezintă structura nodurilor pentru nivelurile Tabel, Rând și Celulă.