使用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 相关文章推荐
日期 时间js控件
May 07 Javascript
JavaScript 错误处理与调试经验总结
Aug 10 Javascript
js 自动播放的实例代码
Nov 19 Javascript
超链接怎么正确调用javascript函数
May 23 Javascript
深入理解(function(){... })();
Aug 16 Javascript
Angularjs实现mvvm式的选项卡示例代码
Sep 08 Javascript
JS中作用域和变量提升(hoisting)的深入理解
Oct 31 Javascript
JavaScript实现离开页面前提示功能【附jQuery实现方法】
Sep 26 jQuery
Vue组件中的data必须是一个function的原因浅析
Sep 03 Javascript
写一个Vue Popup组件
Feb 25 Javascript
vue 地区选择器v-distpicker的常用功能
Jul 23 Javascript
Vue父子之间值传递的实例教程
Jul 02 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 preg_match_all结合str_replace替换内容中所有img
2008/10/11 PHP
PHP基础学习小结
2011/04/17 PHP
php实现简单洗牌算法
2013/06/18 PHP
PHP实现AES256加密算法实例
2014/09/22 PHP
php实现分页显示
2015/11/03 PHP
JavaScript高级程序设计(第3版)学习笔记12 js正则表达式
2012/10/11 Javascript
JqueryMobile动态生成listView并实现刷新的两种方法
2014/03/05 Javascript
JS实现表格数据各种搜索功能的方法
2015/03/03 Javascript
学习JavaScript正则表达式
2015/11/13 Javascript
js与applet相互调用的方法
2016/06/22 Javascript
JavaScript实现页面无操作倒计时退出
2016/10/22 Javascript
微信小程序利用co处理异步流程的方法教程
2017/05/20 Javascript
vue.js的computed,filter,get,set的用法及区别详解
2018/03/08 Javascript
vue的常用组件操作方法应用分析
2018/04/13 Javascript
ES6新增的数组知识实例小结
2020/05/23 Javascript
Python批量修改文件后缀的方法
2014/01/26 Python
Python全局变量操作详解
2015/04/14 Python
深入解析Python中的list列表及其切片和迭代操作
2016/03/13 Python
Python3 replace()函数使用方法
2018/03/19 Python
Python 新建文件夹与复制文件夹内所有内容的方法
2018/10/27 Python
python 使用装饰器并记录log的示例代码
2019/07/12 Python
一篇文章搞定Python操作文件与目录
2019/08/13 Python
Python高级特性——详解多维数组切片(Slice)
2019/11/26 Python
浅析Python __name__ 是什么
2020/07/07 Python
在PyCharm中安装PaddlePaddle的方法
2021/02/05 Python
巴西家用小家电购物网站:Polishop
2016/08/07 全球购物
英国领先的独立酒精饮料零售商:DrinkSupermarket
2021/01/13 全球购物
xxx同志考察材料
2014/02/07 职场文书
马智宇结婚主持词
2014/04/01 职场文书
员工自我工作评价
2015/03/06 职场文书
倡议书的格式写法
2015/04/28 职场文书
焦裕禄观后感
2015/06/03 职场文书
恰同学少年观后感
2015/06/08 职场文书
SQL Server连接查询的实用教程
2021/04/07 SQL Server
高性能跳频抗干扰宽带自组网电台
2022/02/18 无线电
5个pandas调用函数的方法让数据处理更加灵活自如
2022/04/24 Python