首先声明:node-canvas的官方git仓库为:https://github.com/Automattic/node-canvas
在没有安装前置依赖之前,直接npm install canvas是一定装不上的,其实互联网上有很多关于win平台安装canvas的文章,报错的时候搜了很多,不过最官方的方法在这:
Installation: Windows · Automattic/node-canvas Wiki (github.com)
看官方文档可以看出官方给出了两种安装依赖的方法,一种是一个一个纯手动安装(不建议,比较麻烦),一种是下载Chocolatey然后一键安装,我的建议是使用Chocolatey 更方便一些
下面给出使用Chocolatey方法安装node-canvas的步骤
一、安装Chocolatey
1)打开终端管理员powershell,运行
Get-ExecutionPolicy
如果显示 Restricted ,那么要执行
Set-ExecutionPolicy AllSigned
2)复制如下命令到shell,回车执行
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install. ps1'))
等待一会儿,如果没有报错error的信息,执行下 choco,出现版本信息,那么就应该安装成功了
二、安装canvas前置依赖
在shell中执行
choco install -y python2 gtk-runtime microsoft-build-tools libjpeg-turbo
这个过程看网络情况,我这边是会等几分钟
一般情况应该只有一个包 libjpeg-turbo 显示安装错误,其他都是安装成功的,不过没关系,打开C盘看下如果 C:\libjpeg-turbo64 文件夹下是这样的,那么就代表成功了
三、下载GTK-2
首先下载安装包,下载完成后,解压到 C:\GTK
四、安装canvas
1)在项目根目录下创建 .npmrc 文件(如果已存在就把代码加在下面即可),内容如下
canvas_binary_host_mirror=https://registry.npmmirror.com/-/binary/canvas
这一步非常的重要,就是给npm安装canvas时换个镜像
2)ok到这一步终于可以安装canvas了!
npm install canvas