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

咱們常常會遇到服務器上傳的圖片進行裁剪或者增長logo等等一些操做,在node平臺上該如何實現呢?node

看到你們都在使用"gm"這個工具,功能很強大,可是在Windows平臺上簡直就是各類坑啊,我整了一下午雖然解決了一部分問題,但仍是選擇了另一款不錯的,並且輕量級跨平臺比較好的截圖模塊——imagesjquery

 

安裝方式   npm install images  git

github地址爲https://github.com/zhangyuanwei/node-imagesgithub

正如做者所描述的,輕量級、跨平臺、jquery風格npm

我這裏僅列出幾個咱們經常使用到的幾個功能的demojson

 

1. 設置或者獲取圖片的大小服務器

 第一種: 工具

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

 第二種ui

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

以上兩種方式中若是不包含參數將會返回圖片的寬度或者高度,size返回的是一個json,{width:,height: },若是包含參數的話,圖片將會按照參數設置更改圖片大小(還有一個resize()接口也能夠設置圖片的大小)spa

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少了不少,可是足夠知足咱們的大部分的基本需求了。

相關文章
相關標籤/搜索