feat(textRun): implemented footnote references on the text run element

This commit is contained in:
Maximilian Zauner
2019-10-18 13:33:47 +02:00
parent ef3055430b
commit ddb34e6a46
2 changed files with 14 additions and 2 deletions

View File

@ -1,14 +1,20 @@
// Footnotes // Footnotes
// Import from 'docx' rather than '../build' if you install from npm // Import from 'docx' rather than '../build' if you install from npm
import * as fs from "fs"; import * as fs from "fs";
import { Document, Packer, Paragraph } from "../build"; import { Document, Packer, Paragraph, TextRun } from "../build";
const doc = new Document(); const doc = new Document();
doc.addSection({ doc.addSection({
children: [new Paragraph("Hello World").referenceFootnote(1), new Paragraph("Hello World").referenceFootnote(2)], children: [
new Paragraph({
children: [new TextRun("Hello").referenceFootnote(1), new TextRun(" World!").referenceFootnote(2)],
}),
new Paragraph("Hello World").referenceFootnote(3),
],
}); });
doc.createFootnote(new Paragraph("Foo"));
doc.createFootnote(new Paragraph("Test")); doc.createFootnote(new Paragraph("Test"));
doc.createFootnote(new Paragraph("My amazing reference")); doc.createFootnote(new Paragraph("My amazing reference"));

View File

@ -1,3 +1,4 @@
import { FootnoteReferenceRun } from "file/footnotes/footnote/run/reference-run";
import { IRunOptions, Run } from "./run"; import { IRunOptions, Run } from "./run";
import { Text } from "./run-components/text"; import { Text } from "./run-components/text";
@ -16,4 +17,9 @@ export class TextRun extends Run {
super(options); super(options);
this.root.push(new Text(options.text)); this.root.push(new Text(options.text));
} }
public referenceFootnote(id: number): TextRun {
this.root.push(new FootnoteReferenceRun(id));
return this;
}
} }