介绍下Jimp 如何创建空白背景纸,并在背景纸上平铺照片

2026/04/09Node.js 57 阅读
使用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
});