使用Node.js给图片加水印的方法


Posted in Javascript onNovember 15, 2016

一、准备工作:

首先,确保你本地已经安装好了node环境。

然后,我们进行图像编辑操作需要用到一个Node.js的库:images。

这个库的地址是:https://github.com/zhangyuanwei/node-images,作者定义它为 “Node.js轻量级跨平台图像编解码库” ,并提供了一系列接口。

我们要做的首先是安装images库:

npm install images

二、直接上DEMO:

步骤如下:

step1:文件夹结构

使用Node.js给图片加水印的方法

step2:JS代码

var images = require('images');
var path = require('path');
var watermarkImg = images('water_logo.png');
var sourceImg = images('source.png');
// 比如放置在右下角,先获取原图的尺寸和水印图片尺寸
var sWidth = sourceImg.width();
var sHeight = sourceImg.height();
var wmWidth = watermarkImg.width();
var wmHeight = watermarkImg.height();
images(sourceImg)
// 设置绘制的坐标位置,右下角距离 40px
.draw(watermarkImg, sWidth - wmWidth - 40, sHeight - wmHeight - 40)
// 保存格式会自动识别
.save('saveimg.png');

step3:运行node app命令

使用Node.js给图片加水印的方法

step4:运行node命令后,文件夹结构如下图

使用Node.js给图片加水印的方法

step5:最终生成的加水印图片

使用Node.js给图片加水印的方法

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

Javascript 相关文章推荐
用javascript实现页面打印的三种方法
Mar 05 Javascript
新浪中用来显示flash的函数
Apr 02 Javascript
JS打开新窗口的2种方式
Apr 18 Javascript
jquery的flexigrid无法显示数据提示获取到数据
Jul 19 Javascript
jquery实现手风琴效果
Nov 20 Javascript
使用Function.apply()的参数数组化来提高 JavaScript程序性能的技巧
Dec 23 Javascript
JS代码实现根据时间变换页面背景效果
Jun 16 Javascript
用JS实现轮播图效果(二)
Jun 26 Javascript
js文件中直接alert()中文出来的是乱码的解决方法
Nov 01 Javascript
js实时监控文本框输入字数的实例代码
Jan 18 Javascript
Node+OCR实现图像文字识别功能
Nov 26 Javascript
Vue组件通信中非父子组件传值知识点总结
Dec 05 Javascript
Node.js批量给图片加水印的方法
Nov 15 #Javascript
AngularJS 中使用Swiper制作滚动图不能滑动的解决方法
Nov 15 #Javascript
AngularJS extend用法详解及实例代码
Nov 15 #Javascript
Windows系统下安装Node.js的步骤图文详解
Nov 15 #Javascript
jQuery checkbox选中问题之prop与attr注意点分析
Nov 15 #Javascript
javascript实现消灭星星小游戏简单版
Nov 15 #Javascript
js滚轮事件兼容性问题需要注意哪些
Nov 15 #Javascript
You might like
PHP 字符截取 解决中文的截取问题,不用mb系列
2009/09/29 PHP
destoon实现调用图文新闻的方法
2014/08/21 PHP
PHP+Ajax验证码验证用户登录
2016/07/20 PHP
jquery ajax 登录验证实现代码
2009/09/23 Javascript
javascript 事件查询综合 推荐收藏
2010/03/10 Javascript
关于html+ashx开发中几个问题的解决方法
2011/07/18 Javascript
js移除事件 js绑定事件实例应用
2012/11/28 Javascript
jQuery中bind,live,delegate与one方法的用法及区别解析
2013/12/30 Javascript
JavaScript 实现鼠标拖动元素实例代码
2014/02/24 Javascript
改变状态栏文字的js代码
2014/06/13 Javascript
ECMAScript5(ES5)中bind方法使用小结
2015/05/07 Javascript
nodejs导出excel的方法
2015/06/30 NodeJs
Bootstrap实现各种进度条样式详解
2017/04/13 Javascript
Angularjs的键盘事件的绑定
2017/07/27 Javascript
js实现登录与注册界面
2017/11/01 Javascript
jQuery实现列表的增加和删除功能
2018/06/14 jQuery
详解基于electron制作一个node压缩图片的桌面应用
2019/01/29 Javascript
jQuery 隐藏/显示效果函数用法实例分析
2020/05/20 jQuery
Vue解决echart在element的tab切换时显示不正确问题
2020/08/03 Javascript
vue自定义指令限制输入框输入值的步骤与完整代码
2020/08/30 Javascript
[55:18]Liquid vs Chaos 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
[53:50]CHAOS vs Mineski 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
Python selenium实现微博自动登录的示例代码
2018/05/16 Python
Python基于OpenCV库Adaboost实现人脸识别功能详解
2018/08/25 Python
解决pytorch报错:AssertionError: Invalid device id的问题
2020/01/10 Python
Python sqlalchemy时间戳及密码管理实现代码详解
2020/08/01 Python
python 批量将中文名转换为拼音
2021/02/07 Python
纯CSS3打造属于自己的“小黄人”
2016/03/14 HTML / CSS
关于Java String的一道面试题
2013/09/29 面试题
应届生程序员求职信
2013/11/05 职场文书
餐饮总经理岗位职责
2014/03/07 职场文书
四年级评语大全
2014/04/21 职场文书
教师党员自我剖析材料
2014/09/29 职场文书
见习报告格式要求
2014/11/04 职场文书
导游词之凤凰古城
2019/10/22 职场文书
python实现Nao机器人的单目测距
2021/09/04 Python