Notas de rodapé e notas finais
Notas de Rodapé e Notas de Fim
Aspose.Words FOSS para .NET representa notas de rodapé e notas de fim com uma única classe de nó Footnote distinguida por sua propriedade FootnoteType, juntamente com classes separadas de opções de numeração e separadores no namespace Aspose.Words.Notes.
Lendo Conteúdo de Notas de Rodapé e Notas de Fim
Footnote é um nó de história composto — como Body ou uma célula de tabela, contém Paragraphs e Tables — que contém o texto de uma nota de rodapé ou nota de fim. Sua propriedade FootnoteType (um valor enum FootnoteType, Footnote ou Endnote) distingue que tipo é. ReferenceMark devolve o caractere de marca de referência configurado, ActualReferenceMark devolve a marca realmente renderizada (considerando a numeração automática), e IsAuto indica se a marca é auto-numerada. ParentParagraph localiza o parágrafo no corpo principal do documento onde ocorre a referência da nota de rodapé ou nota de fim. GetText() extrai o conteúdo em texto simples da nota de rodapé, espelhando o método disponível em outros nós de nível de história.
Configurando Numeração e Posição
A numeração e o comportamento de posicionamento são controlados separadamente para notas de rodapé e notas de fim através de FootnoteOptions e EndnoteOptions, ambos implementando a interface compartilhada IFootnoteOptions. FootnoteOptions.Position (um valor FootnotePosition — BottomOfPage ou BeneathText) e EndnoteOptions.Position (um valor EndnotePosition — EndOfSection ou EndOfDocument) controlam onde cada tipo é colocado. Ambos expõem NumberStyle, StartNumber e RestartRule (um valor FootnoteNumberingRule — Continuous, RestartSection, RestartPage ou Default) para controlar a sequência de numeração. FootnoteOptions também expõe Columns, para dispor as notas de rodapé na parte inferior da página em múltiplas colunas.
Separadores de Notas de Rodapé e Notas de Fim
FootnoteSeparator é um nó de história que contém o conteúdo que o Word insere entre o corpo principal do documento e suas notas de rodapé/finais — a linha horizontal curta por padrão, mas pode conter qualquer conteúdo de parágrafo. Sua propriedade SeparatorType (um valor FootnoteSeparatorType) distingue as seis funções de separador que o Word define: FootnoteSeparator, FootnoteContinuationSeparator, FootnoteContinuationNotice e os equivalentes de nota final. FootnoteSeparatorCollection fornece acesso tipado a todos os nós de separador em um documento via GetByFootnoteSeparatorType(FootnoteSeparatorType).
Dicas e Melhores Práticas
- Verifique
Footnote.FootnoteTypeantes de assumir que um nóFootnoteé uma nota de rodapé — a mesma classe representa tanto notas de rodapé quanto notas finais. - Use
ActualReferenceMarkem vez deReferenceMarkquando precisar da marca como ela será realmente renderizada, já que marcas auto-numeradas diferem do caractere de marca configurado. - Configure
FootnoteOptionseEndnoteOptionsantes de adicionar conteúdo de nota de rodapé/final para que as regras de numeração sejam aplicadas de forma consistente a partir da primeira nota. - O conteúdo de
FootnoteSeparatorraramente é personalizado — a maioria dos documentos depende do separador padrão do Word — mas ele está totalmente acessível se um documento precisar de um aviso de continuação personalizado.
Problemas Comuns
| Problema | Causa | Correção |
|---|---|---|
| Nota de rodapé e nota final confundidas na lógica de processamento | Ambos usam a mesma classe Footnote | Ramificar em Footnote.FootnoteType |
| O texto da marca de referência não corresponde à saída renderizada | Usou ReferenceMark em vez de ActualReferenceMark | Leia ActualReferenceMark para a marca como renderizada |
| A numeração reinicia inesperadamente por página/seção | RestartRule definido como RestartPage ou RestartSection | Defina RestartRule como Continuous para numeração em todo o documento |
| Colunas de nota de rodapé ignoradas no final da página | FootnoteOptions.Columns não definido | Defina Columns explicitamente em FootnoteOptions |
FAQ
Como diferencio uma nota de rodapé de uma nota de fim em código?
Verifique a propriedade FootnoteType no objeto Footnote — ele retorna FootnoteType.Footnote ou FootnoteType.Endnote.
As notas de rodapé e as notas de fim podem ter regras de numeração diferentes?
Sim — FootnoteOptions e EndnoteOptions são configurados independentemente, cada um com seu próprio Position, NumberStyle, StartNumber e RestartRule.
Para que serve FootnoteSeparator?
Representa o conteúdo que o Word insere para separar visualmente o corpo principal do documento das suas notas de rodapé ou notas de fim, e o aviso exibido quando uma nota de rodapé continua na página seguinte.
O Footnote suporta tabelas dentro da nota?
Sim — Footnote expõe uma propriedade Tables juntamente com Paragraphs, já que é um nó de história composto como o corpo principal do documento.
API Reference Resumo
| Classe / Método | Descrição |
|---|---|
Footnote | Nó de contêiner para o conteúdo de uma nota de rodapé ou nota de fim |
FootnoteType | Enum: Footnote, Endnote |
FootnoteOptions | Configurações de numeração e posição de notas de rodapé para um documento/seção |
EndnoteOptions | Configurações de numeração e posição de notas de fim para um documento/seção |
FootnotePosition / EndnotePosition | Enums para posicionamento (BottomOfPage/BeneathText, EndOfSection/EndOfDocument) |
FootnoteNumberingRule | Enum que controla quando a numeração reinicia |
FootnoteSeparator | Nó de história para o conteúdo do separador de nota de rodapé/final |
FootnoteSeparatorCollection | Acesso tipado a todos os nós FootnoteSeparator |
FootnoteSeparatorType | Enum que identifica qual dos seis papéis de separador um nó representa |