Node.js节点画布显示base64图像

时间:2017-07-18 09:13:51

标签: javascript node.js image canvas node-canvas

我目前正在使用base64socket.io图片从客户端传输到我的服务器。在服务器上,我想将base64图像渲染到我的画布中。

代码是:

function newSlide(slideImage){
  socket.broadcast.emit('newSlide', slideImage);
  var img = new Image;
  img.src = slideImage;
  ctx.drawImage(img, 0, 0);
}

使用该代码,在客户端上一切正常,我可以将base64图像加载到普通画布中,但在我server.js的服务器上(此代码所在的位置),它不起作用,我在第Image is not defined行收到错误new Image,在没有创建图片的情况下进行尝试时,只需输入base64字符串,就会显示图片或画布除外。< / p>

图像创建的问题是什么,为什么它不起作用?我该怎么做才能让它发挥作用?

2 个答案:

答案 0 :(得分:0)

Image是DOM API的一部分,因此在Node运行时中不存在。

要执行您想要的操作,您将不得不导入一个模块,该模块允许您模拟一些DOM API。

答案 1 :(得分:0)

应该为new Image(),而不是new Image