aboutsummaryrefslogtreecommitdiff
path: root/lib/main.js
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2014-07-08 10:20:52 +0100
committerMichael Williamson <mike@zwobble.org>2014-07-08 10:20:52 +0100
commit40fc65d1f2874eb707a4fb4e93c4a66ccd59f850 (patch)
tree74fe9a043438e80843ee95e3dafc8e52adc9b950 /lib/main.js
parentd54de16a5c570bb6f4aaf3af0c8f0a2fa4987880 (diff)
Extract common code for image conversion
Diffstat (limited to 'lib/main.js')
-rw-r--r--lib/main.js17
1 files changed, 6 insertions, 11 deletions
diff --git a/lib/main.js b/lib/main.js
index 1cb9632..a9ca14d 100644
--- a/lib/main.js
+++ b/lib/main.js
@@ -3,7 +3,7 @@ var path = require("path");
var mammoth = require("./");
var promises = require("./promises");
-var htmlPaths = require("./html-paths");
+var images = require("./images");
function main(argv) {
var docxPath = argv["docx-path"];
@@ -20,23 +20,18 @@ function main(argv) {
var basename = path.basename(docxPath, ".docx");
outputPath = path.join(outputDir, basename + ".html");
var imageIndex = 0;
- options.convertImage = function(element, html, messages, callback) {
+ options.convertImage = images.inline(function(element) {
imageIndex++;
var extension = element.contentType.split("/")[1];
var filename = imageIndex + "." + extension;
- element.read().then(function(imageBuffer) {
+ return element.read().then(function(imageBuffer) {
var imagePath = path.join(outputDir, filename);
return promises.nfcall(fs.writeFile, imagePath, imageBuffer);
}).then(function() {
- var attributes = {src: filename};
- if (element.altText) {
- attributes.alt = element.altText;
- }
- html.selfClosing(htmlPaths.element("img", attributes));
- callback();
- }).fail(callback);
- };
+ return {src: filename};
+ });
+ });
}
return mammoth.convertToHtml({path: docxPath}, options)