deno.land / x / docx@8.5.0 / demo / 16-multiple-sections.ts
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148// Multiple sections and headers
import * as fs from "fs";import { Document, Footer, Header, Packer, PageNumber, NumberFormat, PageOrientation, Paragraph, TextRun } from "docx";
const doc = new Document({ sections: [ { children: [new Paragraph("Hello World")], }, { properties: { page: { pageNumbers: { start: 1, formatType: NumberFormat.DECIMAL, }, }, }, headers: { default: new Header({ children: [new Paragraph("First Default Header on another page")], }), }, footers: { default: new Footer({ children: [new Paragraph("Footer on another page")], }), },
children: [new Paragraph("hello")], }, { properties: { page: { size: { orientation: PageOrientation.LANDSCAPE, }, pageNumbers: { start: 1, formatType: NumberFormat.DECIMAL, }, }, }, headers: { default: new Header({ children: [new Paragraph("Second Default Header on another page")], }), }, footers: { default: new Footer({ children: [new Paragraph("Footer on another page")], }), }, children: [new Paragraph("hello in landscape")], }, { properties: { page: { size: { orientation: PageOrientation.PORTRAIT, }, }, }, headers: { default: new Header({ children: [ new Paragraph({ children: [ new TextRun({ children: ["Page number: ", PageNumber.CURRENT], }), ], }), ], }), },
children: [new Paragraph("Page number in the header must be 2, because it continues from the previous section.")], }, { properties: { page: { size: { orientation: PageOrientation.PORTRAIT, }, pageNumbers: { formatType: NumberFormat.UPPER_ROMAN, }, }, }, headers: { default: new Header({ children: [ new Paragraph({ children: [ new TextRun({ children: ["Page number: ", PageNumber.CURRENT], }), ], }), ], }), }, children: [ new Paragraph( "Page number in the header must be III, because it continues from the previous section, but is defined as upper roman.", ), ], }, { properties: { page: { size: { orientation: PageOrientation.PORTRAIT, }, pageNumbers: { start: 25, formatType: NumberFormat.DECIMAL, }, }, }, headers: { default: new Header({ children: [ new Paragraph({ children: [ new TextRun({ children: ["Page number: ", PageNumber.CURRENT], }), ], }), ], }), }, children: [ new Paragraph( "Page number in the header must be 25, because it is defined to start at 25 and to be decimal in this section.", ), ], }, ],});
Packer.toBuffer(doc).then((buffer) => { fs.writeFileSync("My Document.docx", buffer);});
Version Info