aboutsummaryrefslogtreecommitdiff
path: root/lib/docx/docx-reader.js
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2015-09-07 20:04:58 +0100
committerMichael Williamson <mike@zwobble.org>2015-09-07 20:04:58 +0100
commite5e37a6f2cfa04e146d534028fbf291aac2a9fe2 (patch)
tree82f731589d4534b51b2dd1caf4b51848c0468eb1 /lib/docx/docx-reader.js
parent97144ee9f557ef4886456972d36583b6b62685d2 (diff)
Add support for external images
Diffstat (limited to 'lib/docx/docx-reader.js')
-rw-r--r--lib/docx/docx-reader.js12
1 files changed, 9 insertions, 3 deletions
diff --git a/lib/docx/docx-reader.js b/lib/docx/docx-reader.js
index 9b1ec9a..8627022 100644
--- a/lib/docx/docx-reader.js
+++ b/lib/docx/docx-reader.js
@@ -1,5 +1,7 @@
exports.read = read;
+var path = require("path");
+
var promises = require("../promises");
var documents = require("../documents");
var Result = require("../results").Result;
@@ -12,14 +14,17 @@ var contentTypesReader = require("./content-types-reader");
var numberingXml = require("./numbering-xml");
var stylesReader = require("./styles-reader");
var notesReader = require("./notes-reader");
+var Files = require("./files").Files;
-function read(docxFile) {
+function read(docxFile, input) {
+ input = input || {};
return promises.props({
contentTypes: readContentTypesFromZipFile(docxFile),
numbering: readNumberingFromZipFile(docxFile),
styles: readStylesFromZipFile(docxFile),
- docxFile: docxFile
+ docxFile: docxFile,
+ files: new Files(input.path ? path.dirname(input.path) : null)
}).also(function(result) {
return {
footnotes: readXmlFileWithBody("footnotes", result, function(bodyReader, xml) {
@@ -80,7 +85,8 @@ function readXmlFileWithBody(name, options, func) {
contentTypes: options.contentTypes,
docxFile: options.docxFile,
numbering: options.numbering,
- styles: options.styles
+ styles: options.styles,
+ files: options.files
});
return readXmlFromZipFile(options.docxFile, "word/" + name + ".xml")
.then(function(xml) {