用node.js给图片加水印
一、准备工作:
首先,确保你本地已经安装好了node环境。
然后,我们进行图像编辑操作需要用到一个Node.js的库:images。
这个库的地址是:https://github.com/zhangyuanwei/node-images,作者定义它为 “Node.js轻量级跨平台图像编解码库” ,并提供了一系列接口。
我们要做的首先是安装images库:
npm install images
二、直接上DEMO:
步骤如下:
step1:文件夹结构
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命令
step4:运行node命令后,文件夹结构如下图
step5:最终生成的加水印图片
转载于:https://www.cnblogs.com/saywa3b/p/6065932.html
用node.js给图片加水印相关推荐
- html 图片加水印,js给图片加水印的两种方法
第一种(较复杂) 根据图片路径获取图片数据,转成blob类型 用FileReader读取图片blob数据为dataURL 创建img标签,src属性为dataURL 监听img.onload, 创建c ...
- node 图片加水印
1单张图片加水印 使用Node进行图片水印添加,需要借助一个Node中的库: images 1 本地安装images库 npm install images -D 2 创建Img.js var ima ...
- js:用canvas给图片加水印,签名等
场景 实际工作中,我们会遇到给图片加水印的效果,比如给用户颁发电子证书要在证书上写下证书的名字,我们可以使用h5的canvas来解决这个问题. 解决 例子:给证书上显示用户名字并下载 // @para ...
- golang实现给图片加水印
2019独角兽企业重金招聘Python工程师标准>>> 最近跟在写golang图片加水印的方法,这里用的是一些基本的功能. package mainimport ("fmt ...
- Node.js中模块加载机制
Node.js中模块加载机制 模块查找规则-当模块拥有路径但没有后缀时 1. require方法根据模块路径查找模块,如果是完整路径,直接引入模块. 2. 如果模块后缀省略,先找同名JS文件再找同名J ...
- php加水印功能,PHP图片加水印功能
本篇文章主要介绍PHP图片加水印功能,感兴趣的朋友参考下,希望对大家有所帮助. 实例代码如下:<?php /** * 功能:给一张图片加上水印效果 * $i 要加水印效果的图片 * $t 水印文 ...
- Java图片处理(二)图片加水印
图片加水印,是通过图片重叠绘制实现的.实现代码如下: public static void press(String pressImg, String pressText, String target ...
- C# 图片加水印例程
using System; using System.IO; using System.Collections; using System.Drawing; using System.Drawing. ...
- Python脚本实现图片加水印
起步 图片是指由图形.图像等构成的平面媒体,有形式的事物,我们看到的,是图画.照片.拓片等的统称. 为了保护一些原创图片的版权,某些时候我们需要在图片上面,加上水印,当然你可以用Photoshop来做 ...
最新文章
- Linux 0.00 的编译和运行
- 又为写作思路熬到秃头?这16篇最新论文打包送你
- java索引序列_视图、序列、索引
- ivx中字体显示_iVX云服务费用优化 · 上篇
- CANopen | 对象字典OD 03 - 启动CANopen节点的服务数据对象SDO
- python switch高效替代_Python中用什么代替switch
- python 字符串替换换行,Python fstring:替换换行符/lineb
- Google 又又又要“重回中国”了?
- org manual翻译--3.6 Org-Plot
- c++ vector随机排序
- 数学建模之matlab入门篇
- Leetcode题解助手
- 云上Java System Profiling与Debugging——蚂蚁金服观察与实践
- linux查看硬盘插槽_SSD小讲堂丨自己动手丰衣足食 手把手教你安装M.2固态硬盘
- java 模块解耦_微服务架构:如何用十步解耦你的系统?
- 基于android的外卖在线订餐系统app
- 问卷调查抽奖系统开发
- “共享经济”何以真“共享”——区块链技术赋能共享出行
- 【智能优化算法】基于粒子群结合NSGA2算法求解多目标优化问题附Matlab代码
- java/php/net/python 网络考试系统设计