node上截取图片工具 images(node-images)

我们经常会遇到服务器上传的图片进行裁剪或者增加logo等等一些操作,在node平台上该如何实现呢?

看到大家都在使用"gm"这个工具,功能很强大,但是在Windows平台上简直就是各种坑啊,我整了一下午虽然解决了一部分问题,但还是选择了另外一款不错的,而且轻量级跨平台比较好的截图模块——images

安装方式   npm install images

github地址为https://github.com/zhangyuanwei/node-images

正如作者所描述的,轻量级、跨平台、jquery风格

我这里仅列出几个我们常用到的几个功能的demo

1. 设置或者获取图片的大小

 第一种:

1 var images = require("images");
2 images("image/test.jpg")
3     .size()
4     .save("image/dist.jpg");

第二种

1 var images = require("images");
2 images("image/test.jpg")
3     .width()
4     .save("image/dist.jpg");

以上两种方式中如果不包含参数将会返回图片的宽度或者高度,size返回的是一个json,{width:,height: },如果包含参数的话,图片将会按照参数设置更改图片大小(还有一个resize()接口也可以设置图片的大小)

2. 绘制一个区域,目前images在这方面功能比较有限,只能画方形。

1 var images = require("images");
2 images(400,400)
3     .fill(255,0,0,0.5)
4     .save("image/dist.jpg");

以上代码绘制了一块400*400的红色方块

3. 将logo绘制到图片中,这个还是比较实用的,直接上代码

1 var images = require("images");
2 images("image/test.jpg")
3     .draw(images("image/logo.jpg"),200,200)
4     .save("image/dist.jpg");

4. 截取图片的一部分,这个功能及其有用,尤其是截取用户头像的时候,非常有意义

1 var images = require("images");
2 images(images("image/test.jpg"),200,200,500,500)
3     .resize(100)
4     .save("image/dist.jpg");

这就是这个工具的几个比较常用的一些功能,虽然相比gm少了很多,但是足够满足我们的大部分的基本需求了。

时间: 2024-12-25 02:09:47

node上截取图片工具 images(node-images)的相关文章

Node.js abaike图片批量下载Node.js爬虫1.00版

这个与前作的差别在于地址的不规律性,需要找到下一页的地址再爬过去找. //====================================================== // abaike图片批量下载Node.js爬虫1.00 // 2017年11月9日 //====================================================== // 内置http模块 var http=require("http"); // 内置文件处理模块,用于创

Node.js aitaotu图片批量下载Node.js爬虫1.00版

即使是https网页,解析的方式也不是一致的,需要多试试. 代码: //====================================================== // aitaotu图片批量下载Node.js爬虫1.00 // 2017年11月14日 //====================================================== // 内置http模块 var https=require("https"); // 内置文件处理模块,

NTVS:把Visual Studio变成Node.js IDE 的工具

NTVS(Node.js Tools for Visual Studio) 运行于VS2012或者VS2013.一些node.js的爱好者已经从PTVS(Python Tools for Visual Studio)转向并开始为VS做些node工具.同时,PTVS团队也在node.js整合上下功夫,于是他们都专注于NTVS使之成为一个社区项目.NTVS是由给你带来PTVS的相同团队开发的,并且得到了来自Red Gate的Bart Read(他开发了Node Packaged Modules图形用

用node.js给图片加水印

一.准备工作: 首先,确保你本地已经安装好了node环境.然后,我们进行图像编辑操作需要用到一个Node.js的库:images.这个库的地址是:https://github.com/zhangyuanwei/node-images,作者定义它为 “Node.js轻量级跨平台图像编解码库” ,并提供了一系列接口.我们要做的首先是安装images库: npm install images 二.直接上DEMO: 步骤如下:step1:文件夹结构 step2:JS代码 var images = req

基于Node.js的自动化工具Gulp

基于Node.js的自动化工具Gulp What is gulp? gulp是前端开发过程中一种基于流的代码构建工具,是自动化项目的构建利器:她不仅能对网站资源进行优化,而且在开发过程中很多重复的任务能够使用正确的工具自动完成:使用她,不仅可以很愉快的编写代码,而且大大提高我们的工作效率. gulp是基于Nodejs的自动任务运行器, 她能自动化地完成 javascript.coffee.sass.less.html/image.css 等文件的测试.检查.合并.压缩.格式化.浏览器自动刷新.部

Node.js meitulu图片批量下载爬虫1.01版

在 http://www.cnblogs.com/xiandedanteng/p/7614051.html 一文我曾经书写过一个图片下载爬虫,但原有程序不是为下载图片而设计故有些绕,于是稍微改写了一下,可读性应该稍好些.功能上和原程序差不多,只是输出目录不是固定在test目录了.代码如下: //================================================ // https://www.meitulu.com图片批量下载Node.js爬虫1.01 // 2017

Node.js 命令行工具的编写

日常开发中,编写 Node.js 命令行工具来完成一些小任务是很常见的操作.其编写也不难,和日常编写 Node.js 代码并无二致. package.json 中的 bin 字段 一个 npm 模块,如果在 package.json 中指定了 bin 字段,那说明该模块提供了可在命令行执行的命令,这些命令就是在 bin 字段中指定的. package.json { "bin": { "myapp": "./cli.js" } } 程序安装后会可在

Node: Nodemon服务重启工具的详细使用

一.简介 Nodemon是一个非常好用的工具,它可以帮助开发者实现服务的自动重启.在服务端开发中,开发者经常会去修改文件然后进行调试,每次修改完如果需要人为去重新启动服务的话,非常浪费精力和时间.Nodemon这个工具正好提供了重启服务的功能,非常方便. 二.项目 还是采用上篇文章创建的项目为例,如下: 三.修改 1.添加脚本,修改启动方式,采用npm启动 //"start": 这个是启动的字段,可以自己定义,在终端运行时对应即可 //"node src/app.js&quo

HTTP的长连接和短连接——Node上的测试

    本文主要从实践角度介绍长.短连接在TCP层面的表现,借助Node.JS搭建后台服务,使用WinHTTP.Ajax做客户端请求测试,最后简单涉及WebSocket.     关键字:长连接.短连接.Node.JS.WebSocket. 一两年前,在理论上对长短连接做了学习,那时的技能以客户端为主,所以也止步于客户端和网络抓包,两年来后台技术渐有把握,打算从前到后的实践一遍.如对理论有不理解的,可以先google/百度 一下,或者看看这篇偏理论的介绍:HTTP的长连接和短连接. 1 短连接的