Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sujith3g/xcod
Node package for docx generation, customized from docxtemplater.
https://github.com/sujith3g/xcod
Last synced: 6 days ago
JSON representation
Node package for docx generation, customized from docxtemplater.
- Host: GitHub
- URL: https://github.com/sujith3g/xcod
- Owner: sujith3g
- License: other
- Created: 2014-09-07T10:18:59.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2016-01-17T11:53:41.000Z (about 9 years ago)
- Last Synced: 2025-01-14T09:59:07.490Z (9 days ago)
- Language: JavaScript
- Homepage:
- Size: 10.7 MB
- Stars: 5
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- Contributing: contributing.md
- License: license.md
Awesome Lists containing this project
README
# DocxTemplater
[![Download count](http://img.shields.io/npm/dm/xcod.svg)](https://www.npmjs.org/package/xcod)
[![Current tag](http://img.shields.io/npm/v/xcod.svg)](https://www.npmjs.org/package/xcod)A customized version of **docxtemplater** with **HyperLink Replacer**.
**docxtemplater** is a library to generate docx documents from a docx template. It can replace tags by their values and replace images with other images. It is very user oriented as users can without a lot of programming knowledge create their first template and automatically change variables in it.
## Documentation
The full documentation can be found on [read the docs](http://docxtemplater.readthedocs.org/en/latest/).
## Demo
[All demos can be found here](http://javascript-ninja.fr/docxgenjs/examples/demo.html)
Including:
- Replace Variables
- Formating
- Angular Parsing
- Loops
- Loops and tables
- Lists
- Replacing images
- Naming the output
- Using QrCodes
- Replacing many images with QrCode
- Raw Xml Insertion## Quickstart
Installation: `npm install docxtemplater`
var DocXTemplater= require('docxtemplater');
//loading the file
docxtemplater=new DocXTemplater().loadFromFile("tagExample.docx");//setting the tags
docxtemplater.setTags({"name":"Edgar"});//when finished
docxtemplater.finishedCallback=function () {
docxtemplater.output();
}//apply the tags
docxtemplater.applyTags();// ===== HyperLink Replacer Example ========//
var DocXTemplater= require('docxtemplater');
docxtemplater=new DocXTemplater().loadFromFile("linkExample1.docx", {
"intelligentTagging":true,
"replaceLinks": {
"Nulla":"http://nulla.com",
"Nunc":"http://nunc.com"
}
});docxtemplater.setTags({
"links":[
{"link":"Nulla"},
{"link":"Nunc"}
]
});//when finished
docxtemplater.finishedCallback=function () {
docxtemplater.output();
}//apply the tags
docxtemplater.applyTags();You can download [tagExample.docx](https://github.com/edi9999/docxtemplater/raw/master/examples/tagExample.docx),[linkExample1.docx](https://github.com/edi9999/docxtemplater/raw/master/examples/linkExample1.docx) and put it in the same folder than your script.
## Have 0.6.3 or less and using the qrcode module ? You probably have a security issue. See [upgrade.md](upgrade.md)
## Known issues
Todo:
- [ ] Incompatibility with IE: Error : SCRIPT5022: End of stream reached (stream length = 14578, asked index = 18431). Corrupted zip ?
- [ ] Use FileSaver API for output http://eligrey.com/blog/post/saving-generated-files-on-the-client-side
- [ ] stop overflooding the global scope:
- DocUtils
- XmlTemplater
- jsQrCode
- jsZip
- DocXTemplater
- ScopeManager
- XmlMatcher
- [ ] output with FileSaver.js to name your file
- [ ] Remove the node/browser specific code when possible
- [ ] When not possible, create a NodeSpecific File or BrowserSpecific File