From ece440340fbdc08ed9492af6adbe5654559523a1 Mon Sep 17 00:00:00 2001 From: Dolan Date: Wed, 22 Feb 2023 20:16:23 +0000 Subject: [PATCH] Add footnotes documentation --- docs/usage/footnotes.md | 42 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 docs/usage/footnotes.md diff --git a/docs/usage/footnotes.md b/docs/usage/footnotes.md new file mode 100644 index 0000000000..c881a8cd3e --- /dev/null +++ b/docs/usage/footnotes.md @@ -0,0 +1,42 @@ +# Footnotes + +!> Footnotes requires an understanding of [Sections](usage/sections.md). + +Use footnotes and endnotes to explain, comment on, or provide references to something in a document. Usually, footnotes appear at the bottom of the page. + +## Example + +```ts +const doc = new Document({ + footnotes: { + 1: { children: [new Paragraph("Foo"), new Paragraph("Bar")] }, + 2: { children: [new Paragraph("Test")] }, + }, + sections: [ + { + children: [ + new Paragraph({ + children: [ + new TextRun({ + children: ["Hello"], + }), + new FootnoteReferenceRun(1), + new TextRun({ + children: [" World!"], + }), + new FootnoteReferenceRun(2), + ], + }), + ], + }, + ], +}); +``` + +## Usage + +Footnotes requires an entry into the `footnotes` array in the `Document` constructor, and a `FootnoteReferenceRun` in the `Paragraph` constructor. + +`footnotes` is an object of number to `Footnote` objects. The number is the reference number, and the `Footnote` object is the content of the footnote. The `Footnote` object has a `children` property, which is an array of `Paragraph` objects. + +`FootnoteReferenceRun` is a `Run` object, which are added to `Paragraph`s. It takes a number as a parameter, which is the reference number of the footnote.