当使用bas64字符串作为参数调用时,节点gm(imagemagick)似乎无法使用

时间:2017-10-16 10:53:46

标签: javascript node.js image imagemagick gm

当图像不是路径时,我没有得到任何输出图像&是基础64编码图像。

    const image = 'base64 encoded string';

    gm(image, ['jpeg'])
    .resize(72, 72)
    .strip()
    .write('./aks.png', function (err) {
    if (!err) console.log('done');
     });

2 个答案:

答案 0 :(得分:0)

您需要将Base64字符串转换为Buffer

var gm = require("gm");
var fs = require("fs");
var image = fs.readFileSync("input.png", "base64");

gm(Buffer.from(image, "base64"))
.resize(72, 72)
.strip()
.write("output.png", function(error) {
  if (error) return console.error(error);
  console.log("Done!");
});

答案 1 :(得分:0)

setInterval(function(){ 
    if ($('#draw').data('jqScribble').blank) {
        $("#pencil").css("filter" , "grayscale(100%)");
    } else {
        $("#pencil").css("filter" , "grayscale(0%)");
    }
}, 1000);