使用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中的数学函数
Apr 04 Javascript
利用JQuery和JS实现奇偶行背景颜色自定义效果
Nov 19 Javascript
JavaScript中OnLoad几种使用方法
Dec 15 Javascript
JavaScript更改原始对象valueOf的方法
Mar 19 Javascript
AngularJS基础知识笔记之过滤器
May 10 Javascript
jquery实现可关闭的倒计时广告特效代码
Sep 02 Javascript
一步步教大家编写酷炫的导航栏js+css实现
Mar 14 Javascript
即将发布的jQuery 3 有哪些新特性
Apr 14 Javascript
smartupload实现文件上传时获取表单数据(推荐)
Dec 12 Javascript
Validform验证时可以为空否则按照指定格式验证
Oct 20 Javascript
vue实现抖音时间转盘
Sep 08 Javascript
用js编写留言板
Mar 17 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作的文本留言本的例子(一)
2006/10/09 PHP
[原创]效率较高的php下读取文本文件的代码
2008/07/02 PHP
让你成为更出色的PHP开发者的10个技巧
2011/02/25 PHP
Linux下安装PHP MSSQL扩展教程
2014/10/24 PHP
教大家制作简单的php日历
2015/11/17 PHP
php自定义分页类完整实例
2015/12/25 PHP
PHP二维数组去重算法
2016/12/17 PHP
JQuery判断radio是否选中并获取选中值的示例代码
2014/10/17 Javascript
JavaScript设计模式之工厂方法模式介绍
2014/12/28 Javascript
kindeditor修复会替换script内容的问题
2015/04/03 Javascript
JQUERY表单暂存功能插件分享
2016/02/23 Javascript
解析javascript瀑布流原理实现图片滚动加载
2016/03/10 Javascript
jQuery实现table中的tr上下移动并保持序号不变的实例代码
2016/07/11 Javascript
JS中的hasOwnProperty()和isPrototypeOf()属性实例详解
2016/08/11 Javascript
原生javascript实现分页效果
2017/04/21 Javascript
Vue监听事件实现计数点击依次增加的方法
2018/09/26 Javascript
layui输入框中只允许输入整数的实现方法
2019/09/18 Javascript
[01:28:31]《加油DOTA》真人秀 第五期
2014/09/01 DOTA
[01:00:12]2018DOTA2亚洲邀请赛 4.7 淘汰赛 VP vs LGD 第一场
2018/04/09 DOTA
[01:11:02]Secret vs Newbee 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
Python中的fileinput模块的简单实用示例
2015/07/09 Python
浅谈python为什么不需要三目运算符和switch
2016/06/17 Python
TensorFlow Session使用的两种方法小结
2018/07/30 Python
对Python中plt的画图函数详解
2018/11/07 Python
python自动化工具之pywinauto实例详解
2019/08/26 Python
python numpy矩阵信息说明,shape,size,dtype
2020/05/22 Python
pycharm 2020 1.1的安装流程
2020/09/29 Python
Html5实现单张、多张图片上传功能
2019/04/28 HTML / CSS
美国围栏公司:Walpole Outdoors
2019/11/19 全球购物
公共事业管理本科生求职信
2013/10/07 职场文书
大学生毕业自我鉴定
2013/11/06 职场文书
退休欢送会致辞
2015/07/31 职场文书
Golang Gob编码(gob包的使用详解)
2021/05/07 Golang
浅析NIO系列之TCP
2021/06/15 Java/Android
SQL之各种join小结详细讲解
2021/08/04 MySQL
python机器学习Github已达8.9Kstars模型解释器LIME
2021/11/23 Python