使用node不要额外安装拓展库压缩图片
时间: 2023-02-10 15:05:49 浏览: 74
您可以使用 node-canvas 模块进行图片压缩。node-canvas 是一个在 Node.js 中使用 Canvas API 的模块,可以用于创建图片、绘图、压缩图片等。
下面是一个使用 node-canvas 压缩图片的示例代码:
```
const fs = require('fs');
const Canvas = require('canvas');
const Image = Canvas.Image;
fs.readFile('./input.jpg', (err, data) => {
if (err) throw err;
// 创建图片
const img = new Image();
img.src = data;
// 创建 canvas
const canvas = Canvas.createCanvas(img.width, img.height);
const ctx = canvas.getContext('2d');
// 在 canvas 上绘制图片
ctx.drawImage(img, 0, 0, img.width, img.height);
// 调整图片质量
const out = fs.createWriteStream('./output.jpg');
const stream = canvas.createJPEGStream({
quality: 0.75,
});
// 将 canvas 内容写入文件
stream.pipe(out);
out.on('finish', () => console.log('The JPEG file was created.'));
});
```
希望这个示例代码对您有帮助!