如何使用MSVC10编译器在x64窗口上的node-canvas中启用jpeg支持?

Ste*_*nko 8 windows node.js npm node-canvas

我需要在nodejs服务器端渲染jpeg图像.我使用以下构建说明安装canvas npm模块:https://github.com/Automattic/node-canvas/wiki/Installation---Windows 我有C:\ libjpeg-turbo \,因为它在手册中提到.如果我做:

npm安装画布

那么这段代码不会启动onload:

 var data = fs.readFileSync("./t.jpg"); var img = new Image();
 img.onload = function () {
     console.log("onload"); 
 }; 
 img.src = data;
Run Code Online (Sandbox Code Playgroud)

(它适用于.png数据).如果我在命令行中指定--with-jpeg,那么MSVC会抱怨缺少libjpeg.h.在这个npm之后删除文件与msvc项目,所以我自己无法设置路径(是否可以关闭此清理?)

那么我怎么能用jpeg支持为windows构建画布呢?在网上找到问题,但没有关于这个主题的答案.

Han*_*ant 0

在我看来,binding.gyp 在第 #143 行缺少“include_dirs”指令,因此编译器可以在 C:\libjpeg-turbo\ 目录中找到 libjpeg.h。尝试插入:

      'include_dirs': [
        'c:/libjpeg-turbo',
      ],
Run Code Online (Sandbox Code Playgroud)