diff --git a/README.md b/README.md index 4af1a5e887..3a421f93f4 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ [![codecov][codecov-image]][codecov-url]

- drawing + drawing

# Demo diff --git a/demo/50-readme-demo.ts b/demo/50-readme-demo.ts new file mode 100644 index 0000000000..6b1cc0ecab --- /dev/null +++ b/demo/50-readme-demo.ts @@ -0,0 +1,61 @@ +// Simple example to add text to a document +// Import from 'docx' rather than '../build' if you install from npm +import * as fs from "fs"; +import { Document, HeadingLevel, Media, Packer, Paragraph, Table, TableCell, TableRow, VerticalAlign } from "../build"; + +const doc = new Document(); + +const image1 = Media.addImage(doc, fs.readFileSync("./demo/images/image1.jpeg")); +const image2 = Media.addImage(doc, fs.readFileSync("./demo/images/pizza.gif")); + +const table = new Table({ + rows: [ + new TableRow({ + children: [ + new TableCell({ + children: [new Paragraph(image1)], + verticalAlign: VerticalAlign.CENTER, + }), + new TableCell({ + children: [ + new Paragraph({ + text: "Hello", + heading: HeadingLevel.HEADING_1, + }), + ], + verticalAlign: VerticalAlign.CENTER, + }), + ], + }), + new TableRow({ + children: [ + new TableCell({ + children: [ + new Paragraph({ + text: "World", + heading: HeadingLevel.HEADING_1, + }), + ], + }), + new TableCell({ + children: [new Paragraph(image1)], + }), + ], + }), + ], +}); + +doc.addSection({ + children: [ + new Paragraph({ + text: "Hello World", + heading: HeadingLevel.HEADING_1, + }), + table, + new Paragraph(image2), + ], +}); + +Packer.toBuffer(doc).then((buffer) => { + fs.writeFileSync("My Document.docx", buffer); +});