我目前正在使用base64
将socket.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>
图像创建的问题是什么,为什么它不起作用?我该怎么做才能让它发挥作用?
答案 0 :(得分:0)
Image
是DOM API的一部分,因此在Node运行时中不存在。
要执行您想要的操作,您将不得不导入一个模块,该模块允许您模拟一些DOM API。
答案 1 :(得分:0)
应该为new Image()
,而不是new Image