diff --git a/demo/demo16.ts b/demo/demo16.ts index 6c75218e53..9113a368b8 100644 --- a/demo/demo16.ts +++ b/demo/demo16.ts @@ -1,7 +1,7 @@ // Multiple sections and headers // Import from 'docx' rather than '../build' if you install from npm import * as fs from "fs"; -import { Document, Packer, PageNumberFormat, PageOrientation, Paragraph } from "../build"; +import { Document, Packer, PageNumberFormat, PageOrientation, Paragraph, TextRun } from "../build"; const doc = new Document(); @@ -41,6 +41,40 @@ doc.addSection({ doc.createParagraph("hello in landscape"); +const header2 = doc.createHeader(); +const pageNumber = new TextRun("Page number: ").pageNumber(); +header2.createParagraph().addRun(pageNumber); + +doc.addSection({ + headers: { + default: header2, + }, + orientation: PageOrientation.PORTRAIT, +}); + +doc.createParagraph("Page number in the header must be 2, because it continues from the previous section."); + +doc.addSection({ + headers: { + default: header2, + }, + pageNumberFormatType: PageNumberFormat.UPPER_ROMAN, + orientation: PageOrientation.PORTRAIT, +}); + +doc.createParagraph("Page number in the header must be III, because it continues from the previous section, but is defined as upper roman."); + +doc.addSection({ + headers: { + default: header2, + }, + pageNumberFormatType: PageNumberFormat.DECIMAL, + pageNumberStart: 25, + orientation: PageOrientation.PORTRAIT, +}); + +doc.createParagraph("Page number in the header must be 25, because it is defined to start at 25 and to be decimal in this section."); + const packer = new Packer(); packer.toBuffer(doc).then((buffer) => {