Update documentation
This commit is contained in:
@ -2,7 +2,48 @@
|
|||||||
|
|
||||||
> Packers are the way in which `docx` turns your code into `.docx` format. It is completely decoupled from the `docx.Document`.
|
> Packers are the way in which `docx` turns your code into `.docx` format. It is completely decoupled from the `docx.Document`.
|
||||||
|
|
||||||
## File System Packer
|
## Version 4
|
||||||
|
|
||||||
|
Packers in `version 4` and above are now one single `Packer`. It works in both a node and browser environment (Angular etc). Now, the packer returns a `Buffer`, `Blob` or `base64 string`. It is up to you to take that and persist it with node's `fs`, send it down as a downloadable file, or anything else you wish. As of version 4, this library will not have options to export to PDF.
|
||||||
|
|
||||||
|
### Export as Buffer
|
||||||
|
|
||||||
|
This will return a NodeJS `Buffer`. If this is used in the browser, it will return a `UInt8Array` instead.
|
||||||
|
|
||||||
|
```js
|
||||||
|
const packer = new docx.Packer();
|
||||||
|
|
||||||
|
packer.toBuffer(doc).then((buffer) => {
|
||||||
|
fs.writeFileSync("My Document.docx", buffer);
|
||||||
|
});
|
||||||
|
```
|
||||||
|
|
||||||
|
### Export as a `base64` string
|
||||||
|
|
||||||
|
```js
|
||||||
|
const packer = new docx.Packer();
|
||||||
|
|
||||||
|
packer.toBase64String(doc).then((string) => {
|
||||||
|
console.log(string);
|
||||||
|
});
|
||||||
|
```
|
||||||
|
|
||||||
|
### Export as Blob
|
||||||
|
|
||||||
|
This is useful if you want to send it as an downloadable in a browser environment.
|
||||||
|
|
||||||
|
```js
|
||||||
|
const packer = new docx.Packer();
|
||||||
|
|
||||||
|
packer.toBlob(doc).then((blob) => {
|
||||||
|
// saveAs from FileSaver will download the file
|
||||||
|
saveAs(blob, "example.docx");
|
||||||
|
});
|
||||||
|
```
|
||||||
|
|
||||||
|
## Version 3 and below
|
||||||
|
|
||||||
|
### File System Packer
|
||||||
|
|
||||||
```js
|
```js
|
||||||
const docx = require("docx");
|
const docx = require("docx");
|
||||||
@ -13,7 +54,7 @@ exporter.pack("My Document");
|
|||||||
// Word Document is in file system
|
// Word Document is in file system
|
||||||
```
|
```
|
||||||
|
|
||||||
## Buffer Packer
|
### Buffer Packer
|
||||||
|
|
||||||
```js
|
```js
|
||||||
const docx = require("docx");
|
const docx = require("docx");
|
||||||
@ -23,7 +64,7 @@ const exporter = new docx.BufferPacker(doc);
|
|||||||
const buffer = exporter.pack();
|
const buffer = exporter.pack();
|
||||||
```
|
```
|
||||||
|
|
||||||
## Stream Packer
|
### Stream Packer
|
||||||
|
|
||||||
Creates a `node` `Readable` stream
|
Creates a `node` `Readable` stream
|
||||||
|
|
||||||
@ -35,7 +76,7 @@ const exporter = new docx.StreamPacker(doc);
|
|||||||
const stream = exporter.pack();
|
const stream = exporter.pack();
|
||||||
```
|
```
|
||||||
|
|
||||||
## Express Packer
|
### Express Packer
|
||||||
|
|
||||||
The old express packer is now deprecated and may disappear soon, so you should upgrade.
|
The old express packer is now deprecated and may disappear soon, so you should upgrade.
|
||||||
|
|
||||||
@ -56,13 +97,13 @@ const exporter = new docx.StreamPacker(doc);
|
|||||||
const stream = exporter.pack();
|
const stream = exporter.pack();
|
||||||
|
|
||||||
// Express' response object
|
// Express' response object
|
||||||
res.attachment('yourfile.xlsx');
|
res.attachment("yourfile.xlsx");
|
||||||
stream.pipe(res);
|
stream.pipe(res);
|
||||||
```
|
```
|
||||||
|
|
||||||
where `res` is the response object obtained through the Express router. It is that simple. The file will begin downloading in the browser.
|
where `res` is the response object obtained through the Express router. It is that simple. The file will begin downloading in the browser.
|
||||||
|
|
||||||
## PDF Exporting
|
### PDF Exporting
|
||||||
|
|
||||||
You can export your word document as a PDF file like so:
|
You can export your word document as a PDF file like so:
|
||||||
|
|
||||||
@ -74,7 +115,3 @@ exporter.packPdf("My Document");
|
|||||||
const exporter = new docx.ExpressPacker(doc, res);
|
const exporter = new docx.ExpressPacker(doc, res);
|
||||||
exporter.packPdf("My Document");
|
exporter.packPdf("My Document");
|
||||||
```
|
```
|
||||||
|
|
||||||
## Browser based docx exporting
|
|
||||||
|
|
||||||
It is on the bucket list. It has been requested by a few, and work is already on it
|
|
||||||
|
Reference in New Issue
Block a user