nodejs處理圖片的中間件node-images詳解
Cross-platform image decoder(png/jpeg/gif) and encoder(png/jpeg) for Node.js
node.js輕量級跨平臺圖像編解碼庫
var images = require("images");
images("input.jpg") //Load image from file
//加載圖像文件
.size(400) //Geometric scaling the image to 400 pixels width
//等比縮放圖像到400像素寬
.draw(images("logo.png"), 10, 10) //Drawn logo at coordinates (10,10)
//在(10,10)處繪制Logo
.save("output.jpg", { //Save the image to a file,whih quality 50
quality : 50 //保存圖片到文件,圖片質量為50
});
Features 功能特性
- Lightweight:no need to install any image processing library.
- 輕量級:無需安裝任何圖像處理庫。
- Cross-platform: Released a compiled .node file on windows, just download and start.
- 跨平臺:Windows下發(fā)布了編譯好的.node文件,下載就能用。
- Easy-to-use: Provide jQuery-like chaining API.Simple and reliable!
- 方便用:jQuery風格的API,簡單可依賴。
Installation 安裝
$ npm install images
API 接口
node-images provide jQuery-like Chaining API,You can start the chain like this:
node-images 提供了類似jQuery的鏈式調用API,您可以這樣開始:
/* Load and decode image from file */ /* 從指定文件加載并解碼圖像 */ images(file) /* Create a new transparent image */ /* 創(chuàng)建一個指定寬高的透明圖像 */ images(width, height) /* Load and decode image from a buffer */ /* 從Buffer數(shù)據(jù)中解碼圖像 */ images(buffer[, start[, end]]) /* Copy from another image */ /* 從另一個圖像中復制區(qū)域來創(chuàng)建圖像 */ images(image[, x, y, width, height])
images(file)
Load and decode image from file從指定文件加載并解碼圖像
images(width, height)
Create a new transparent image創(chuàng)建一個指定寬高的透明圖像
images(buffer[, start[, end]])
Load and decode image from a buffer從Buffer數(shù)據(jù)中解碼圖像
images(image[, x, y, width, height])
Copy from another image從另一個圖像中復制區(qū)域來創(chuàng)建圖像
.fill(red, green, blue[, alpha])
eg:images(200, 100).fill(0xff, 0x00, 0x00, 0.5) Fill image with color以指定顏色填充圖像
.draw(image, x, y)
Draw image on the current image position( x , y )在當前圖像( x , y )上繪制 image 圖像
.encode(type[, config])
eg:images("input.png").encode("jpg", {operation:50}) Encode image to buffer, config is image setting.
以指定格式編碼當前圖像到Buffer,config為圖片設置,目前支持設置JPG圖像質量
Return buffer
返回填充好的Buffer
Note:The operation will cut off the chain
注意:該操作將會切斷調用鏈
See:.save(file[, type[, config]]) 參考:.save(file[, type[, config]])
.save(file[, type[, config]])
eg:images("input.png").encode("output.jpg", {operation:50}) Encoding and save the current image to a file, if the type is not specified, type well be automatically determined according to the file, config is image setting. eg: { operation:50 }
編碼并保存當前圖像到 file ,如果type未指定,則根據(jù) file 自動判斷文件類型,config為圖片設置,目前支持設置JPG圖像質量
.size([width[, height]])
Get size of the image or set the size of the image,if the height is not specified, then scaling based on the current width and height獲取或者設置圖像寬高,如果height未指定,則根據(jù)當前寬高等比縮放
.resize(width[, height])
Set the size of the image,if the height is not specified, then scaling based on the current width and height
設置圖像寬高,如果height未指定,則根據(jù)當前寬高等比縮放, 默認采用 bicubic 算法。
.width([width])
Get width for the image or set width of the image獲取或設置圖像寬度
.height([height])
Get height for the image or set height of the image獲取或設置圖像高度
images.setLimit(width, height)
Set the limit size of each image 設置庫處理圖片的大小限制,設置后對所有新的操作生效(如果超限則拋出異常)
images.setGCThreshold(value)
Set the garbage collection threshold 設置圖像處理庫自動gc的閾值(當新增內存使用超過該閾值時,執(zhí)行垃圾回收)
images.getUsedMemory()
Get used memory (in bytes)得到圖像處理庫占用的內存大小(單位為字節(jié))
images.gc()
Forced call garbage collection 強制調用V8的垃圾回收機制
https://github.com/zhangyuanwei/node-images
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
使用Express+Node.js對mysql進行增改查操作?
這篇文章主要介紹了使用Express+Node.js對mysql進行增改查操作,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-08-08
nodejs 十六進制字符串型數(shù)據(jù)與btye型數(shù)據(jù)相互轉換
這篇文章主要介紹了nodejs 十六進制字符串型數(shù)據(jù)與btye型數(shù)據(jù)相互轉換,需要的朋友可以參考下2018-07-07
node.js 利用流實現(xiàn)讀寫同步,邊讀邊寫的方法
下面小編就為大家?guī)硪黄猲ode.js 利用流實現(xiàn)讀寫同步,邊讀邊寫的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-09-09
node.js多個異步過程中判斷執(zhí)行是否完成的解決方案
這篇文章主要給大家介紹了關于node.js多個異步過程中判斷執(zhí)行是否完成的幾種解決方案,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來一起看看吧。2017-12-12
NodeJs Express框架實現(xiàn)服務器接口詳解
最近學習了基于前后端分離的開發(fā)模式,我前端使用Vue框架,后端使用nodejs開發(fā)API接口,下面這篇文章主要給大家介紹了關于nodejs使用Express框架寫后端接口的相關資料,需要的朋友可以參考下2022-08-08

