宝哥软件园

Node.js批量给图片加水印的方法

编辑:宝哥软件园 来源:互联网 时间:2021-09-12

一、准备工作:

首先,你要阅读完这篇文章://www .JB 51。net/article/97391。htm。

然后,我们安装node.js的一个模块:imageinfo。

国家预防机制安装imageinfo

二、直接上演示:

步骤如下:

第一步:文件夹结构

第二步:JS代码

//引用文件系统模块var fs=require(' fs ');//引用imageinfo模块var imageInfo=require(' imageInfo ');//引用形象模块var images=require(' images ');var watermarkImg=images(' water _ logo。png ');函数readFileList(路径,文件列表){var files=fs.readdirSync(路径);files.forEach(函数(itm,index) {var stat=fs.statSync(路径ITM);if (stat.isDirectory()) {//递归读取文件readFileList(路径itm '/',filestlist)} else { var obj={ };//定义一个对象存放文件的路径和名字obj.path=路径;//路径obj.filename=itm//名字文件列表。推送(obj);}})}var getFiles={//获取文件夹下的所有文件getFileList:函数(路径){ var file list=[];readFileList(路径,文件列表);返回文件列表;},//获取文件夹下的所有图片getImageFiles:函数(路径){ var imageList=[];this.getFileList(路径)。forEach((item)={ var ms=imageInfo(fs)。readfilesync(项目。路径项。文件名));ms . MiMeType(ImageList。推送(项目。filename))});返回imageList } }//获取文件夹下的所有图片var photos=getfiles。getimagefiles(' ./public/');for(var I=0;一。照片。长度;i ) {var sourceImg=images ' ./public/'照片[I]);var sourceImgName=照片[I];var sWidth=源img。宽度();var sHeight=源img。高度();var wmWidth=watermarkimg。宽度();var WM高度=watermarkimg。高度();图像(sourceImg)//设置绘制的坐标位置,右下角距离40px.draw(watermarkImg,sWidth - wmWidth - 40,sHeight - wmHeight - 40)//保存格式会自动识别。保存('。/save img/' sourceImgName ' ');}第三步:运行结节命令后,文件夹结构如下图

第四步:查看批量加水印的图片

以上所述是小编给大家介绍的Node.js批量给图片加水印的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

更多资讯
游戏推荐
更多+