Node 裁切图片的方法
1、安装 jimp
$ npm install --save jimp
2、读取本地图片切图
jimp.read('本地图片地址', function (err, img) {if (err) throw errimg.crop(x坐标起点, y坐标起点, width最终图片宽度, height最终图片高度).write(result)
})
3、读取http图片,转成buffer,切成buffer数据
const options = {headers: {'User-Agent': 'Mozilla/5.0',}
}
http.get(imgUrl, options ,(response) => {let imgData = ''response.setEncoding('binary')response.on('data', (chunk) => {imgData += chunk})response.on('end', () => {const imgBuffer = new Buffer.from(imgData, 'binary')jimp.read(imgBuffer).then((img) => {const topLeftImage = img.clone() // copy jimp对象进行操作const topRightImage = img.clone()const bottomLeftImage = img.clone()const bottomRightImage = img.clone()const topLeft = topLeftImage.crop(64, 64, 256, 256)topLeft.getBuffer('image/jpeg', (_, buf) => {consoel.log(buf)})const topRight = topRightImage.crop(320, 64, 256, 256)topRight.getBuffer('image/jpeg', (_, buf) => {consoel.log(buf)})const bottomLeft = bottomLeftImage.crop(64, 320, 256, 256)bottomLeft.getBuffer('image/jpeg', (_, buf) => {consoel.log(buf)})const bottomRight = bottomRightImage.crop(320, 320, 256, 256)bottomRight.getBuffer('image/jpeg', (_, buf) => {consoel.log(buf)})}).catch(err => {console.error(err)})})
}).on('error', function (err) {console.log('出错!', err)
})
4、graphicsMagick、imageMagick GM
需要下载工具graphicsMagick | imageMagick并配置环境变量
$ npm i gm
/*** 裁剪图片* @param srcImg 待裁剪的图片路径* @param destImg 裁剪后的图片路径* @param width 宽度* @param height 高度* @param x x坐标* @param y y坐标*/
function cropImgHandle(srcImg, destImg, width, height, x, y) {gm(srcImg).crop(width, height, x, y).write(destImg, function (err) {if (err) {return console.log(err)} else {console.log('success')}})
}
到此 Node 裁切图片的方法介绍完成。
Node 裁切图片的方法相关推荐
- 记录:nodejs 裁切图片的方法
1.jimp github文档 1.读取本地图片切图 jimp.read('本地图片地址', function (err, img) {if (err) throw errimg.crop(x坐标起点 ...
- C#开发:不规则裁切图片
C#使用GDI+可以创建,修改图片,创建图片的bitmap,使用Graphics在图片上勾画元素,点.线.面等. 规则的图片裁切,设置图片的方形或者圆形的方式,就能直接进行图片的裁切.裁切使用jpg保 ...
- 使用jcrop实现裁切图片
jcrop为基于jquery库实现的图片裁切插件.当使用该插件使需要引入jquery和jcrop(包括js文件和css文件). //css文件的引入<link rel="stylesh ...
- netcore使用ImageSharp裁切图片
项目中需要对上传的图片进行裁切处理,发现之前的裁切方法不能跨平台使用了,于是乎找到了ImageSharp项目,项目地址https://github.com/SixLabors/ImageSharp,参 ...
- iOS裁切图片(圆头像的实现)
裁切图片(圆头像的实现) 1.还是那几个步骤 2.步骤详细在代码里 - (void)viewDidLoad {[super viewDidLoad];//加载图片UIImage *image=[UII ...
- Node.js与Sails~方法拦截器policies
policies sails的方法拦截器类似于.net mvc里的Filter,即它可以作用在controller的action上,在服务器响应指定action之前,对这个action进行拦截,先执行 ...
- ES使用org.elasticsearch.client.transport.NoNodeAvailableException: No node available 错误解决方法
ES使用org.elasticsearch.client.transport.NoNodeAvailableException: No node available 错误解决方法 参考文章: (1)E ...
- java读取pdf_Java 读取PDF中的文本和图片的方法
本文将介绍通过Java程序来读取PDF文档中的文本和图片的方法.分别调用方法extractText()和extractImages()来读取. 使用工具:Free Spire.PDF for Java ...
- java怎么将加载图片消除_Java中加载图片的方法
Java中添加图片,我知道有两种方法 用new ImageIcon("地址")函数,将图片放到JLabel中,然后把JLabel放到需要的地方就可以了 ImageIcon bg=n ...
最新文章
- 原生js实现Ajax,JSONP
- Android NDK JNI 的简单使用
- element-ui中的loading的实际应用
- SAP UI5 应用的调试标志位的本地存储逻辑 - local storage 使用的一个例子
- 数据结构——顺序栈和链式栈的简单实现和解析(C语言版)
- Perl文档操作选项
- STM32中的串口通信
- beta分布_常用概率分布总结(2)
- Gson反序列化详解
- 51nod 1299 监狱逃离
- elsevier模板通讯作者添加脚注的方法[已解决]
- H5+CSS3移动商城界面.七天从零实战课程-会员_登录
- 蓝牙音频编码简介 - SBC、AAC、AptX、LDAC、LHDC
- TCL中变量嵌套使用
- 图像处理------Mean Shift滤波(边缘保留的低通滤波)
- 什么事LLVM和Clang?Clang与GCC有什么区别?Clang如何使用?
- 服务器主板显示不了独立显卡,独立显卡故障——如何才知道显卡和主板不兼容...
- 百度地图经纬度转腾讯/高德
- 2021上海L Three,Three,Three(一般图匹配)
- LINUX KALI初级渗透XP系统入门学习总结(一)
热门文章
- Unity3D for VR 学习(5): VR Gaze Input
- 新办公室设置共享打印机
- 小程序 - 接入支付宝预授权支付 笔记
- 界面色彩渐变效果的实现
- 为什么不想做产品经理
- 10月12日 阅读数异常公告
- 菁英杯计算机能力大赛试题,“第四届全国大学生计算机系统能力培养大赛(龙芯杯)”决赛结果...
- 安装程序遇到错误:0x80240037 尝试打开时出错 - WSUSSCAN.cab 错误: 0x80070002。WSUSSCAN.cab文件 是什么?cab 是什么文件?
- html图片靠右浮动 文字左侧环绕,CSS 模拟float实现center文字左右环绕图片的效果...
- 去除页眉横线快准狠的3个方法,就喜欢这么简单粗暴的操作!