2018-08-03 23:26:14 +01:00
|
|
|
<p align="center">
|
2019-08-03 13:42:24 +01:00
|
|
|
<img alt="clippy the assistant" src="https://i.imgur.com/37uBGhO.gif">
|
2018-08-03 23:26:14 +01:00
|
|
|
</p>
|
|
|
|
|
|
|
|
<p align="center">
|
2018-08-21 22:29:40 +01:00
|
|
|
Easily generate .docx files with JS/TS. Works for Node and on the Browser. :100:
|
2018-08-03 23:26:14 +01:00
|
|
|
</p>
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
# Welcome
|
|
|
|
|
2018-08-04 04:03:08 +01:00
|
|
|
## Installation
|
2018-08-04 03:28:27 +01:00
|
|
|
|
|
|
|
```sh
|
2018-08-04 04:03:08 +01:00
|
|
|
npm install --save docx
|
2018-08-04 03:28:27 +01:00
|
|
|
```
|
2018-08-04 04:03:08 +01:00
|
|
|
|
2018-08-04 03:28:27 +01:00
|
|
|
Then you can `require` or `import` as usual:
|
|
|
|
|
2019-08-06 17:51:13 +01:00
|
|
|
```ts
|
|
|
|
const docx = require("docx");
|
2018-08-04 03:28:27 +01:00
|
|
|
```
|
|
|
|
|
2019-08-03 13:42:24 +01:00
|
|
|
```ts
|
2018-08-09 03:13:16 +01:00
|
|
|
import * as docx from "docx";
|
2019-08-03 13:42:24 +01:00
|
|
|
// or
|
|
|
|
import { ... } from "docx";
|
2018-08-04 03:28:27 +01:00
|
|
|
```
|
|
|
|
|
2018-08-04 04:03:08 +01:00
|
|
|
## Basic Usage
|
|
|
|
|
2019-08-06 17:51:13 +01:00
|
|
|
```ts
|
2019-08-03 13:42:24 +01:00
|
|
|
import * as fs from "fs";
|
|
|
|
import { Document, Packer, Paragraph, TextRun } from "docx";
|
2018-08-04 04:03:08 +01:00
|
|
|
|
|
|
|
// Create document
|
2019-08-03 13:42:24 +01:00
|
|
|
const doc = new Document();
|
|
|
|
|
|
|
|
// Documents contain sections, you can have multiple sections per document, go here to learn more about sections
|
|
|
|
// This simple example will only contain one section
|
|
|
|
doc.addSection({
|
|
|
|
properties: {},
|
|
|
|
children: [
|
|
|
|
new Paragraph({
|
|
|
|
children: [
|
|
|
|
new TextRun("Hello World"),
|
|
|
|
new TextRun({
|
|
|
|
text: "Foo Bar",
|
|
|
|
bold: true,
|
|
|
|
}),
|
|
|
|
new TextRun({
|
2019-11-21 01:02:46 +00:00
|
|
|
text: "\tGithub is the best",
|
2019-08-03 13:42:24 +01:00
|
|
|
bold: true,
|
2019-11-21 01:02:46 +00:00
|
|
|
}),
|
2019-08-03 13:42:24 +01:00
|
|
|
],
|
|
|
|
}),
|
|
|
|
],
|
|
|
|
});
|
2018-08-04 04:03:08 +01:00
|
|
|
|
|
|
|
// Used to export the file into a .docx file
|
2019-08-07 22:12:14 +01:00
|
|
|
Packer.toBuffer(doc).then((buffer) => {
|
2019-08-03 13:42:24 +01:00
|
|
|
fs.writeFileSync("My Document.docx", buffer);
|
2019-01-02 15:53:28 +00:00
|
|
|
});
|
2018-08-04 04:03:08 +01:00
|
|
|
|
2019-01-02 15:53:28 +00:00
|
|
|
// Done! A file called 'My First Document.docx' will be in your file system.
|
2018-08-04 04:03:08 +01:00
|
|
|
```
|
2018-08-04 03:28:27 +01:00
|
|
|
|
2018-08-09 03:13:16 +01:00
|
|
|
## Honoured Mentions
|
|
|
|
|
|
|
|
[@felipeochoa](https://github.com/felipeochoa)
|
|
|
|
|
|
|
|
[@h4buli](https://github.com/h4buli)
|
|
|
|
|
2018-09-11 19:16:47 +01:00
|
|
|
<p align="center">
|
|
|
|
<img alt="clippy the assistant" src="http://i60.tinypic.com/339pvtt.png">
|
|
|
|
</p>
|
|
|
|
|
2018-08-03 23:26:14 +01:00
|
|
|
---
|
|
|
|
|
|
|
|
Made with 💖
|