Livelli logici di nodi in un documento
Questa documentazione a volte si riferisce a un gruppo di classi di nodi come appartenenti a un" livello “in un documento, come” livello di blocco"," livello inline “(noto anche come” inline") o nodi" livello di riga". Questi livelli in un documento sono differenziati puramente logicamente e non sono esplicitamente espressi dall’ereditarietà o da altri mezzi DOM Aspose.Words. Il livello di nodo viene utilizzato per descrivere la posizione nell’albero del documento in cui si verificherebbe in genere il nodo.
Nell’articolo precedente, abbiamo già parlato della relazione tra i nodi e del fatto che non tutti i nodi possono essere figli di qualsiasi nodo. Ad esempio, la cella può essere solo un figlio di riga e una riga può essere solo un figlio di tabella e così via. Queste relazioni sono applicabili anche per la divisione logica dei nodi in livelli nel documento.
Le sezioni seguenti descrivono i livelli logici dei nodi in Aspose.Words e le classi che appartengono a ciascun livello.
Livello logico del documento e della sezione
Un documento Word è costituito da una o più sezioni, rappresentate dalla classe Section e separate da interruzioni di sezione. Una sezione può definire le proprie dimensioni della pagina, i margini, l’orientamento, il numero di colonne di testo e intestazioni e piè di pagina.
Document e Sezione i nodi di livello hanno la struttura come mostrato nel diagramma seguente.
Una sezione contiene il testo principale, nonché intestazioni e piè di pagina per le prime, pari e dispari pagine. Questi diversi “flussi” di testo sono chiamati stories.
In Aspose.Words, il nodo Section contiene i nodi storia Body e HeaderFooter. L’oggetto Body memorizza il testo principale. Gli oggetti HeaderFooter memorizzano il testo per ogni intestazione e piè di pagina. Il testo di qualsiasi storia è costituito da paragrafi e tabelle, rispettivamente rappresentati dagli oggetti Paragraph e Table del livello di blocco.
Inoltre, ogni documento di Word può contenere un glossario, che è rappresentato dal nodo GlossaryDocument in Aspose.Words. Un documento glossario contiene BuildingBlocks, AutoText e AutoCorrect voci.
GlossaryDocument
Blocco livello logico
I nodi a livello di blocco rappresentano contenitori per il contenuto e i controlli del contenuto e possono verificarsi nei nodi figlio della struttura del documento nei nodi seguenti:
- Corpo
- Intestazione
- Piè
- Nota a piè di pagina
- Commentare
- Forma
- GroupShape
- Cellula
- StructuredDocumentTag
I nodi a livello di blocco sono rappresentati dalle seguenti classi:
- Tables e Paragraphs, che sono i nodi a livello di blocco più importanti
- Segnalibri, che si verificano sia a livello di blocco che a livello di linea
- StructuredDocumentTag, che rappresentano il markup personalizzato e possono contenere sia il contenuto che i controlli del contenuto
Il diagramma seguente mostra gli elementi a livello di blocco.
Livello logico in linea
I nodi a livello di linea rappresentano il contenuto effettivo del documento e possono essere contenuti nei seguenti contenitori:
- Paragrafo-il contenitore più comune
- SmartTag
- StructuredDocumentTag
Gli elementi a livello inline sono rappresentati dalle seguenti classi:
- Run – esecuzione di testo formattato in modo diverso
- BookmarkStart e BookmarkEnd rappresentano i segnalibri
- CommentRangeStart, CommentRangeEnd, Comment e Footnote rappresentano le annotazioni
- FieldStart, FieldChar, FieldSeparator e FieldEnd che rappresentano i caratteri di campo e FormField rappresentano i campi di parole
- SpecialChar rappresenta i caratteri speciali nel documento
- Shape e GroupShape rappresentano forme, disegni, immagini, ecc.
- SmartTag e StructuredDocumentTag rappresentano il markup personalizzato
Il diagramma seguente mostra la struttura dei nodi a livello di linea.
Le forme in Microsoft Word includono Office Art AutoShapes, caselle di testo, immagini, oggetti OLE e controlli ActiveX, tutti rappresentati utilizzando la classe Shape
. Alcune forme possono anche contenere testo, quindi i nodi Forma in Aspose.Words possono contenere nodi a livello di blocco.
Le forme possono essere raggruppate l’una all’interno dell’altra utilizzando i nodi GroupShape.
Livello di tabella, riga e nodo cella
La tabella è composta da nodi di righe e celle. Gli elementi della tabella sono rappresentati dalle seguenti classi:
- Row rappresenta una riga di tabella
- Cell rappresenta una cella di tabella
- StructuredDocumentTag rappresenta il markup personalizzato
Il diagramma seguente mostra le strutture dei nodi dei livelli di tabella, Riga e cella.