nodejs图片裁剪、水印(使用images)
/**
* Created by chaozhou on 2015/9/21.
*/
var images = require("images"); /**
* 缩放图像
* @param srcImg 被缩放图像
* @param size 缩放后图像的宽度(图像高度等比缩放)
*/
var resizeCurrentImg = function(srcImg, size){
images(srcImg) //加载源图像
.resize(size) //设置图像宽高,如果height未指定,则根据当前宽高等比缩放
.save(srcImg, { //保存当前图像至srcImg,图像质量100
quality : 100
});
}; /**
* 缩放图像
* @param srcImg 源图像
* @param width 缩放后的宽度
* @param height 缩放后的高度
*/
var resizeCurrentImgWithArgs = function(srcImg, width,height){
images(srcImg) //加载源图像
.resize(width,height) //设置图像宽高,如果height未指定,则根据当前宽高等比缩放
.save(srcImg, { //保存当前图像至srcImg,图像质量100
quality : 100
});
}; /**
* 图像缩放
* @param srcImg 源图像
* @param dstImg 生成图像
* @param size 生成图像宽度(高度会自适应缩放)
*/
var resizeImg = function(srcImg, dstImg,size){
images(srcImg) //加载源图像
.resize(size) //设置图像宽高,如果height未指定,则根据当前宽高等比缩放
.save(dstImg, { //保存当前图像至srcImg,图像质量100
quality : 100
});
}; /**
* 图像缩放
* @param srcImg 源图像
* @param dstImg 生成图像
* @param width 缩放后的宽度
* @param height 缩放后的高度
*/
var resizeImgWithArgs = function(srcImg, dstImg,width,height){
images(srcImg) //加载源图像
.resize(width,height) //设置图像宽高,如果height未指定,则根据当前宽高等比缩放
.save(dstImg, { //保存当前图像至srcImg,图像质量100
quality : 100
});
}; /**
* 添加水印
* @param srcImg 源图
* @param watermarkImg 水印图
* @param x 添加水印水平位置x
* @param y 添加水印垂直位置y
*/
var addWatermark = function(srcImg,watermarkImg,x,y){
images(srcImg)
.draw(images(watermarkImg), x, y)
.save(srcImg, {
quality : 100 //保存图片到文件,图片质量为100
});
}; /**
* 获取图像的宽高
* @param srcImg 源图像
* @param callBack
*/
var ofSize = function(srcImg,callBack){
callBack(images(srcImg)//加载源图像,获取图像大小,返回结果:{ width: 1001, height: 897 }
.size());
};
nodejs图片裁剪、水印(使用images)的更多相关文章
- nodejs图片裁剪、缩放、水印
关于nodejs下图片的裁剪.水印,网上的模块很多,主要如下: gm:https://github.com/aheckmann/gm node-canvas:https://github.com/Au ...
- Java图片缩略图裁剪水印缩放旋转压缩转格式-Thumbnailator图像处理
前言 java开发中经常遇到对图片的处理,JDK中也提供了对应的工具类,不过处理起来很麻烦,Thumbnailator是一个优秀的图片处理的开源Java类库,处理效果远比Java API的好,从API ...
- PHP图片裁剪_图片缩放_PHP生成缩略图
在制作网页过程中,为了排版整齐美观,对网页中的图片处理成固定大小尺寸的图片,或是要截去图片边角中含有水印的图片,对于图片量多,每天更新大量图,靠人工PS处理是不现实的,那么有没有自动处理图片的程序了! ...
- node.js平台下,cropper.js实现图片裁剪预览并转换为base64发送至服务端。
一 .准备工作 1.首先需要先下载cropper,常规使用npm,进入项目路径后执行以下命令: npm install cropper 2. cropper基于jquery,在此不要忘记引入jq,同时 ...
- 使用JCrop进行图片裁剪,裁剪js说明,裁剪预览,裁剪上传,裁剪设计的图片处理的工具类和代码
1.要想制作图片裁剪功能,可以使用网上的裁剪工具JCrop,网址是:https://github.com/tapmodo/Jcrop/ 案例效果如下: 2.引入JCrop的js代码,具体要引入那 ...
- nodejs图片处理工具gm用法
在做H5应用中,有时候会涉及到一些图片加工处理的操作,nodejs有一个很好的后台图片处理module,就是这里说的gm.gm有官方文档,但感觉写得太抽象,反而看不懂了.这里把一些常见的用法写下,供大 ...
- cropper.js实现图片裁剪预览并转换为base64发送至服务端。
一 .准备工作 1.首先需要先下载cropper,常规使用npm,进入项目路径后执行以下命令: npm install cropper 2. cropper基于jquery,在此不要忘记引入jq,同时 ...
- c#封装DBHelper类 c# 图片加水印 (摘)C#生成随机数的三种方法 使用LINQ、Lambda 表达式 、委托快速比较两个集合,找出需要新增、修改、删除的对象 c# 制作正方形图片 JavaScript 事件循环及异步原理(完全指北)
c#封装DBHelper类 public enum EffentNextType { /// <summary> /// 对其他语句无任何影响 /// </summary> ...
- php课程 8-32 如何使用gd库进行图片裁剪和缩放
php课程 8-32 如何使用gd库进行图片裁剪和缩放 一.总结 一句话总结:图片缩放到图片裁剪就是改变原图截取的位置以及截取的宽高. 1.电商网站那么多的图片,如果全部加载卡得慢的很,所以他们是怎么 ...
随机推荐
- 牛客网提高组模拟赛第七场 T2 随机生成树
其实看懂题就很水啦qwq,就是求\(1-N\)的约数啦. 暴力求的话时间复杂度是\(O(NlogN)\)的,其实正解是枚举每个数的倍数......这样的时间复杂度是\(\frac{N}{1}+\fra ...
- kali linux之Msf-exploit模块,生成payload
Exploit模块 Active exploit(主动地向目标机器发送payload并执行,使目标交出shell(反连等)) msf5 > use exploit/windows/smb/pse ...
- CentOS6.5更改语言设置
yum grouplist |grep cn yum groupinstall “Chinese Support”——————————————yum groupinstall “Desktop”vi ...
- 2016级算法第二次上机-G.ModricWang's Real QuickSort
873 思路 这是一道非常基础的题,目的是帮助大家回顾快排相关的知识.大家完成此题之后应该就对快排有比较深刻的印象了. 对于整个快排的流程,题目描述中已经给了清晰完整的伪代码.需要自己加工的部分就是, ...
- P2877 [USACO07JAN]牛校Cow School
传送门 $01$规划 $01$规划优质讲解:传送门 考虑先将每一科按 $t/p$ 从小到大排序,枚举每一个 $D$(删除的考试数量) 显然一开始的成绩是 $\frac{\sum_{i=d+1}^nt[ ...
- 解决NTFS文件系统下的文件/文件夹属性中没有安全选项卡的问题
注册表项: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer 键:NoSecurityTab ...
- php引擎文件php.ini优化参数
无论是Apache环境还是nginx环境,php.ini都适合,php-fpm.conf适合nginx+fcgi的配置. 生产环境php.ini(php.ini-production) php.ini ...
- 【后渗透】PowerSploit
1.下载安装:git clone https://github.com/mattifestation/PowerSploit.git 2.搭建web服务器(如172.16.12.2),将powersp ...
- git多账户使用
由于公司和个人分别有git账号,而git客户端在默认情况下是只能使用一个账号,如果需要使用多个账号,需要额外的设置. 1. 不使用全局设置,使用如下清除全局设置 git config --global ...
- python -ConfigParser模块讲解
configParser 模块用于操作配置文件 注:Parser汉译为“解析”之意. 配置文件的格式与windows ini文件类似,可以包含一个或多个节(section),每个节可以有多个参数(键= ...