Виноски та кінцеві виноски
Виноски та примітки у кінці
Aspose.Words FOSS для .NET представляє виноски та примітки у кінці за допомогою єдиного класу вузла Footnote, який відрізняється своєю властивістю FootnoteType, а також окремих класів параметрів нумерації та розділювачів у просторі імен Aspose.Words.Notes.
Читання вмісту виносок та приміток у кінці
Footnote — це складений вузол історії, подібний до Body або клітинки таблиці, що містить Paragraphs і Tables, — який містить текст однієї виноски або примітки у кінці. Його властивість FootnoteType (значення перерахування FootnoteType, Footnote або Endnote) визначає, який це тип. ReferenceMark повертає налаштований символ позначки посилання, ActualReferenceMark повертає фактично відображену позначку (з урахуванням автоматичної нумерації), а IsAuto повідомляє, чи позначка автоматично нумерується. ParentParagraph знаходить абзац у основному тексті документа, де розташовано посилання на виноску або примітку у кінці. GetText() витягує простий текстовий вміст виноски, відтворюючи метод, доступний іншим вузлам рівня історії.
Налаштування нумерації та розташування
Поведінка нумерації та розміщення контролюється окремо для виноск та приміток у кінці за допомогою FootnoteOptions та EndnoteOptions, які обидва реалізують спільний інтерфейс IFootnoteOptions. FootnoteOptions.Position (значення FootnotePosition — BottomOfPage або BeneathText) і EndnoteOptions.Position (значення EndnotePosition — EndOfSection або EndOfDocument) визначають, куди розміщується кожен тип. Обидва надають NumberStyle, StartNumber та RestartRule (значення FootnoteNumberingRule — Continuous, RestartSection, RestartPage або Default) для керування послідовністю нумерації. FootnoteOptions додатково надає Columns, що дозволяє розташовувати виноски внизу сторінки в кількох колонках.
Розділювачі виносок та приміток у кінці
FootnoteSeparator — це вузол історії, що містить вміст, який Word розташовує між основним тілом документа та його виносками/кінцевими виносками — за замовчуванням коротка горизонтальна лінія, але він може містити будь-який абзацний вміст. Його властивість SeparatorType (значення типу FootnoteSeparatorType) розрізняє шість ролей роздільників, які визначає Word: FootnoteSeparator, FootnoteContinuationSeparator, FootnoteContinuationNotice та їх еквіваленти для кінцевих виносок. FootnoteSeparatorCollection надає типізований доступ до всіх вузлів-роздільників у документі через GetByFootnoteSeparatorType(FootnoteSeparatorType).
Поради та кращі практики
- Перевірте
Footnote.FootnoteTypeперед тим, як вважати вузолFootnoteвиноскою — той самий клас представляє як виноски, так і кінцеві виноски. - Використовуйте
ActualReferenceMarkзамістьReferenceMark, коли потрібен маркер у тому вигляді, в якому він фактично відображається, оскільки автоматично нумеровані маркери відрізняються від налаштованого символу маркера. - Налаштуйте
FootnoteOptionsтаEndnoteOptionsперед додаванням вмісту виноски/кінцевої виноски, щоб правила нумерації застосовувалися послідовно з першої виноски. - Вміст
FootnoteSeparatorрідко налаштовують — більшість документів покладаються на стандартний роздільник Word — але він повністю доступний, якщо документ потребує спеціального повідомлення про продовження.
Типові проблеми
| Проблема | Причина | Виправлення |
|---|---|---|
| Виноска та кінцева примітка переплутані у логіці обробки | Обидва використовують один і той самий клас Footnote | Гілка за Footnote.FootnoteType |
| Текст мітки посилання не відповідає виведеному результату | Використано ReferenceMark замість ActualReferenceMark | Прочитайте ActualReferenceMark щодо позначки у вигляді |
| Нумерація неочікувано перезапускається на кожній сторінці/розділі | RestartRule встановлено в RestartPage або RestartSection | Встановіть RestartRule у Continuous для нумерації по всьому документу |
| Колонки виносок ігноруються внизу сторінки | FootnoteOptions.Columns не встановлено | Встановіть Columns явно на FootnoteOptions |
FAQ
Як розрізнити виноску та кінцеву виноску у коді?
Перевірте властивість FootnoteType у об’єкта Footnote — вона повертає FootnoteType.Footnote або FootnoteType.Endnote.
Чи можуть виноски та кінцеві виноски мати різні правила нумерації?
Так — FootnoteOptions та EndnoteOptions налаштовані незалежно, кожен має власні Position, NumberStyle, StartNumber та RestartRule.
Для чого використовується FootnoteSeparator?
Вона представляє вміст, який Word вставляє для візуального розділення основного тіла документа від його виносок або кінцевих виносок, а також повідомлення, що показується, коли виноска продовжується на наступній сторінці.
Чи підтримує Footnote таблиці всередині примітки?
Так — Footnote надає властивість Tables поряд із Paragraphs, оскільки це складний елемент історії, подібний до основного тіла документа.
API Reference Резюме
| Клас / Метод | Опис |
|---|---|
Footnote | Контейнерний вузол для вмісту однієї виноски або кінцевої виноски |
FootnoteType | Enum: Footnote, Endnote |
FootnoteOptions | Налаштування нумерації та розташування виносок для документа/розділу |
EndnoteOptions | Налаштування нумерації та розташування кінцевих виносок для документа/розділу |
FootnotePosition / EndnotePosition | Перелічення для розміщення (BottomOfPage/BeneathText, EndOfSection/EndOfDocument) |
FootnoteNumberingRule | Enum, що контролює, коли нумерація перезапускається |
FootnoteSeparator | Story node для вмісту розділювача виносок/кінцевих виносок |
FootnoteSeparatorCollection | Типізований доступ до всіх FootnoteSeparator вузлів |
FootnoteSeparatorType | Enum, що ідентифікує, яку з шести ролей розділювача представляє вузол |