nodejs有很多可以操作图片的第三方库,比如gm、sharp等等,但是这些都需要很繁琐的步骤安装一类,很麻烦
但是jimp很简单,只需要npm install jimp
就可以使用。下面是一些简单的demo,只需要将文件中的图片路径换成自己的就可以实现对图片的简单操作
运行这个文件需要nodejs环境,然后node self.js
就可以了:
const Jimp = require('jimp');
async function resize() {
// 读取图片
const image = await Jimp.read('static/333.jpeg');
// 缩小成150*150
await image.resize(150, 150);
// 写文件到本地
await image.writeAsync(`./${Date.now()}_150x150.png`);
}
resize();
//图片裁剪
//crop( x, y, w, h)
//参数分别表示开始位置的x,y以及裁剪的宽和高
// const Jimp = require('jimp');
// // crop( x, y, w, h)
// async function crop() {
// // 读取图片
// const image = await Jimp.read('https://s1.ax1x.com/2020/04/07/GgS7FA.jpg');
// await image.crop(100, 100, 150, 150);
// // 保存
// await image.writeAsync(`test/${Date.now()}_crop_50x50.png`);
// }
// crop()
// const Jimp = require('jimp');
// async function rotate() {
// // 读取图片
// const image = await Jimp.read('https://s1.ax1x.com/2020/04/07/GgS7FA.jpg');
// await image.rotate(45);
// // 保存
// await image.writeAsync(`./${Date.now()}_rotate_150x150.png`);
// }
// rotate()
// const Jimp = require('jimp');
// async function opacity() {
// // 读取图片
// const image = await Jimp.read('https://s1.ax1x.com/2020/04/07/GgS7FA.jpg');
// await image.opacity(.5);
// // 保存
// await image.writeAsync(`./${Date.now()}_opacity_150x150.png`);
// }
// opacity()
// const Jimp = require('jimp');
// async function greyscale() {
// // 读取图片
// const image = await Jimp.read('https://s1.ax1x.com/2020/04/07/GgS7FA.jpg');
// await image.greyscale();
// // 保存
// await image.writeAsync(`./${Date.now()}_greyscale_150x150.png`);
// }
// greyscale()