This module exposes a tag to insert raw runs (<w:r>) inside the document. This makes it possible to include styled text without having to remove the enclosing paragraph like in the {@rawXml} tag.
This module is available as part of the docxtemplater PRO plan.
WRun module for docxtemplater.
You will need docxtemplater v3: npm install docxtemplater
Install this module with npm install --save "$url"
Your docx should contain the text: {r@wrun}
The following example will render some bold text
const fs = require('fs');
const WRunModule = require('docxtemplater-wrun-module');
const wrunModule = new WRunModule();
const wrun = "<w:r>" +
"<w:rPr>" +
"<w:b/>" +
"<w:lang w:val="en-GB"/>" +
"</w:rPr>" +
"<w:t>bold</w:t>" +
"</w:r>";
const doc = new Docxtemplater(zip, { modules: [wrunModule] });
doc.setData({
wrun:wrun
})
.render();
const buffer = doc
.getZip()
.generate({type:"nodebuffer", compression: "DEFLATE"});
fs.writeFile("test.docx", buffer);
After installing the module, you can use a working demo by running node sample.js
.
Bugfix when using docxtemplater 3.19.6 or newer
Add support for pptx filetype
Declare supportedFileTypes, which allows to use this module with the new docxtemplater constructor which was introduced in docxtemplater 3.17.
Bugfix when having no data
Update browser build to use XMLSerializer instead of xmldom
Use requiredAPIVersion
Explanation : On some versions of npm (notably 5.8.0), when having a package containing docxtemplater-word-run-module, the installation will generate a tree of node_modules that puts the module on a level where it has no access to docxtemplater. By explicitly asking it as a dependency, this issue is avoided.
Explanation : Recently, the scopemananger API (internal API) has changed, this new version of the footnotes module makes the module work with both versions newer than 3.6 and older than 3.6 of docxtemplater.
Add meta context argument to custom parser with information about the tag for each types of tags
Make it possible to use different prefix than "r@"
Initial release