Níveis lógicos de nós em um documento
Essa documentação às vezes se refere a um grupo de classes de nós como pertencentes a um “nível” em um documento, como nós “nível de bloco”, “nível embutido” (também conhecido como “inline”) ou “nível de linha”. Estes níveis num documento são diferenciados puramente logicamente e não são explicitamente expressos por herança ou outros meios Aspose.Words DOM. O nível do nó é usado para descrever o local na árvore de documentos onde o nó normalmente ocorreria.
No artigo anterior, já falamos sobre a relação entre nós e o fato de que nem todos os nós podem ser filhos de quaisquer Nós. Por exemplo, Cell só pode ser um filho de linha, e uma linha só pode ser um filho de tabela, e assim por diante. Essas relações também são aplicáveis para a divisão lógica de nós em níveis no documento.
As secções seguintes descrevem os níveis lógicos dos nós em Aspose.Words e as classes que pertencem a cada nível.
Nível lógico do documento e da secção
Um documento do Word consiste em uma ou mais seções, representadas pela classe Section e separadas por quebras de seção. Uma seção pode definir seu próprio tamanho de página, margens, orientação, número de colunas de texto e cabeçalhos e rodapés.
Document e Secção os nós de nível têm a estrutura como mostrado no diagrama a seguir.
Uma secção contém o texto principal, bem como os cabeçalhos e rodapés das primeiras páginas, pares e ímpares. Esses diferentes" fluxos " de texto são chamados stories.
Em Aspose.Words, o nó Section contém os nós da história Body e HeaderFooter. O objeto Body armazena o texto principal. Os objetos HeaderFooter armazenam o texto para cada cabeçalho e rodapé. O texto de qualquer história consiste em parágrafos e tabelas, respectivamente representados pelos objetos Paragraph e Table do nível de bloco.
Além disso, cada documento do Word pode conter um glossário, que é representado pelo nó GlossaryDocument em Aspose.Words. Um documento do glossário contém entradas BuildingBlocks, AutoText e AutoCorrect.
GlossaryDocument
Nível Lógico Do Bloco
Os nós em nível de bloco representam contêineres para conteúdo e controles de Conteúdo e podem ocorrer nos nós filhos da árvore de documentos nos seguintes nós:
- Corpo
- Cabeçalho
- Rodapé
- Nota de rodapé
- Comentário
- Forma
- GroupShape
- Célula
- StructuredDocumentTag
Os nós de nível de bloco são representados pelas seguintes classes:
- Tables e Paragraphs, que são os nós de nível de bloco mais importantes
- Marcadores, que ocorrem tanto no nível do bloco como no nível embutido
- StructuredDocumentTag, que representam marcação personalizada e podem conter conteúdo e controles de conteúdo
O diagrama a seguir mostra os elementos de nível de bloco.
Nível Lógico Em Linha
Os nós de nível embutido representam o conteúdo real do documento e podem estar contidos nos seguintes contêineres:
- Parágrafo-o contentor mais comum
- SmartTag
- StructuredDocumentTag
Os elementos de nível embutido são representados pelas seguintes classes:
- Run - execuções de texto formatadas de forma diferente
- BookmarkStart e BookmarkEnd representam marcadores
- CommentRangeStart, CommentRangeEnd, Comment e Footnote representam anotações
- FieldStart, FieldChar, FieldSeparator e FieldEnd que representam caracteres de campo e FormField representam campos de palavras
- SpecialChar representa caracteres especiais no documento
- Shape e GroupShape representam formas, desenhos, imagens, etc.
- SmartTag e StructuredDocumentTag representam marcação personalizada
O diagrama a seguir mostra a estrutura de nós de nível embutido.
As formas em Microsoft Word incluem Office Art AutoShapes, caixas de texto, imagens, OLE objectos e controlos ActiveX, todos representados utilizando a classe Shape
. Algumas formas também podem conter texto, portanto, os nós de forma em Aspose.Words podem conter nós de nível de bloco.
As formas podem ser agrupadas entre si usando GroupShape nós.
Nível de nó de tabela, linha e célula
A tabela consiste em nós de linhas e células. Os elementos da tabela são representados pelas seguintes classes:
- Row representa uma linha de tabela
- Cell representa uma célula da tabela
- StructuredDocumentTag representam marcação personalizada
O diagrama a seguir mostra as estruturas de nós dos níveis de tabela, linha e célula.