当前位置: 首页> 文旅> 旅游 > 科技大学录取分数线2023_crm客户管理系统的功能_qq群推广链接_营销活动策划方案

科技大学录取分数线2023_crm客户管理系统的功能_qq群推广链接_营销活动策划方案

时间:2025/8/23 19:13:56来源:https://blog.csdn.net/XiugongHao/article/details/142705178 浏览次数:0次
科技大学录取分数线2023_crm客户管理系统的功能_qq群推广链接_营销活动策划方案
  1. 上传时加水印
    用户上传原始图片->服务器:保留原始图片以及水印图片
  2. 动态水印
    用户上传原始图片->服务器:只保留原始图片
    请求图片时,服务器动态加水印

根据业务需求自行更改操作,下面只讲最简单的给图片加水印。

主要使用到了库为 jimp 。

在这里插入图片描述

const path = require("path");
const {Jimp} = require('jimp');// 给一张图片添加水印
async function addWatermark(waterFile, originFile, targetFile, proportion = 10, marginProportion = 0.05) {const [water, origin] = await Promise.all([Jimp.read(waterFile),Jimp.read(originFile)])// 对水印图片进行缩放const curProportion = origin.bitmap.width / water.bitmap.width;water.scale(curProportion / proportion);// 计算位置const right = origin.bitmap.width * marginProportion;const bottom = origin.bitmap.height * marginProportion;const x = origin.bitmap.width - water.bitmap.width - right;const y = origin.bitmap.height - water.bitmap.height - bottom;// 写入水印origin.composite(water, x, y, {mode: Jimp.BLEND_SOURCE_OVER,opacitySource: 0.5});await origin.write(targetFile);
}async function test() {const waterPath = path.resolve(__dirname, 'resource', 'water.png');const originPath = path.resolve(__dirname, 'resource', 'origin.png');const targetPath = path.resolve(__dirname, 'resource', 'target.png');await addWatermark(waterPath, originPath, targetPath);
}test()

这里需要注意,我使用的 jimp 版本为 “jimp”: “^1.6.0”,该版本相对于 0 版本有一些改动,见 :migrate-to-v1

比如不再支持默认导入。

在这里插入图片描述

关键字:科技大学录取分数线2023_crm客户管理系统的功能_qq群推广链接_营销活动策划方案

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: