diff options
| author | Michael Williamson <mike@zwobble.org> | 2017-05-14 13:39:33 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2017-05-14 13:39:33 +0100 |
| commit | 327b99803151111bcec37af0d2bc5df5baa3506b (patch) | |
| tree | 6fddd7f45c42b3b123de5ec81ee56f4bcf537516 /lib/images.js | |
| parent | bdf33ea9172f3c32f42197135053e932f725fd91 (diff) | |
Extract data URI image converter to images module
Diffstat (limited to 'lib/images.js')
| -rw-r--r-- | lib/images.js | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/lib/images.js b/lib/images.js index fef0ca3..c7d3ef5 100644 --- a/lib/images.js +++ b/lib/images.js @@ -3,7 +3,9 @@ var _ = require("underscore"); var promises = require("./promises"); var Html = require("./html"); -exports.imgElement = function(func) { +exports.imgElement = imgElement; + +function imgElement(func) { return function(element, messages) { return promises.when(func(element)).then(function(result) { var attributes = _.clone(result); @@ -13,7 +15,15 @@ exports.imgElement = function(func) { return [Html.freshElement("img", attributes)]; }); }; -}; +} // Undocumented, but retained for backwards-compatibility with 0.3.x exports.inline = exports.imgElement; + +exports.dataUri = imgElement(function(element) { + return element.read("base64").then(function(imageBuffer) { + return { + src: "data:" + element.contentType + ";base64," + imageBuffer + }; + }); +}); |
