Node.js: Sharp 包无法安装

Node.js: Sharp package unable to install

我正在尝试安装 Sharp 软件包来压缩图像缓冲区。现在,当我通过 npm install sharp --save 安装软件包并尝试使用这行代码时:

const sharp = require('sharp');

我收到以下错误:https://textuploader.com/1gvep。 这是提到的日志: https://textuploader.com/1gvez 。 在发布之前我做了一些研究。这是我试过的:

但到目前为止,这些都无济于事。现在有些人似乎通过降级到 Node 10 来解决问题,但这对我来说不是一个选择,因为我需要将它与 Discord.js 一起使用,这至少需要 Node 12。我想到的想法正在将图像写入 tmp 文件夹,用另一个库压缩写入的图像并重新加载它,但我认为这不是很优雅。现在我的问题是:

编辑: 正如 Alex 所建议的,我试用了 Jimp 并在开始时简单地减小了图像尺寸。我会在这里分享我的代码,以防有人寻找替代方案。

let buffer = canvas.toBuffer('image/png'); //from node-canvas
Jimp.read(buffer)
.then(image => {
   image.resize(width>>1, height>>1).getBufferAsync(Jimp.MIME_PNG)
   .then(comprBuffer => {
      /* use the new buffer */
   });
})
.catch(err => { 
   console.log(err) 
});

我尝试安装 sharp,在以下版本上没有问题:

节点 v12.16.1 Npm v6.13.4

改用 Jimp 怎么样?

https://www.npmjs.com/package/jimp