使用Jimp 创建空白背景纸,并通过composite将指定的照片平铺在背景纸上,实现类似与相册馆打印数码照片的效果。
引入Jimp包,并创建白色背景纸
const {Jimp, JimpMime, BlendMode} = require('jimp');
const sheet = new Jimp({
width: 600,
height: 600,
color: 0xFFFFFFFF
});
将照片平铺到相纸上
照片的来源以及Jimp的基本用法可阅读Nodejs中Jimp的基本用法
//从buff或服务器路径中读取照片
const photo = await Jimp.read('')
const x = 0 // 开始平铺的相纸左侧距离
const y = 0 // 开始平铺的相纸上方距离
// 将照片复制到照片纸上
sheet.composite(photo, x, y, {
mode: BlendMode.SRC_OVER,
opacitySource: 1,
opacityDest: 1
});