溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

nodejs中怎么利用node-images中間件處理圖片

發(fā)布時(shí)間:2021-07-21 10:28:29 來(lái)源:億速云 閱讀:149 作者:Leah 欄目:web開(kāi)發(fā)

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)nodejs中怎么利用node-images中間件處理圖片,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

node.js輕量級(jí)跨平臺(tái)圖像編解碼庫(kù)

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          //保存圖片到文件,圖片質(zhì)量為50
  });

Features 功能特性

  1. Lightweight:no need to install any image processing library.

  2. 輕量級(jí):無(wú)需安裝任何圖像處理庫(kù)。

  3. Cross-platform: Released a compiled .node file on windows, just download and start.

  4. 跨平臺(tái):Windows下發(fā)布了編譯好的.node文件,下載就能用。

  5. Easy-to-use: Provide jQuery-like chaining API.Simple and reliable!

  6. 方便用:jQuery風(fēng)格的API,簡(jiǎn)單可依賴。

Installation 安裝

$ npm install images

API 接口

node-images provide jQuery-like Chaining API,You can start the chain like this:

node-images 提供了類似jQuery的鏈?zhǔn)秸{(diào)用API,您可以這樣開(kāi)始:

/* Load and decode image from file */
/* 從指定文件加載并解碼圖像 */
images(file)

/* Create a new transparent image */
/* 創(chuàng)建一個(gè)指定寬高的透明圖像 */
images(width, height)

/* Load and decode image from a buffer */
/* 從Buffer數(shù)據(jù)中解碼圖像 */
images(buffer[, start[, end]])

/* Copy from another image */
/* 從另一個(gè)圖像中復(fù)制區(qū)域來(lái)創(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)建一個(gè)指定寬高的透明圖像

images(buffer[, start[, end]])

Load and decode image from a buffer從Buffer數(shù)據(jù)中解碼圖像

images(image[, x, y, width, height])

Copy from another image從另一個(gè)圖像中復(fù)制區(qū)域來(lái)創(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 )在當(dāng)前圖像( x , y )上繪制 image 圖像

.encode(type[, config])

eg:images("input.png").encode("jpg", {operation:50}) Encode image to buffer, config is image setting.

以指定格式編碼當(dāng)前圖像到Buffer,config為圖片設(shè)置,目前支持設(shè)置JPG圖像質(zhì)量

Return buffer

返回填充好的Buffer

Note:The operation will cut off the chain

注意:該操作將會(huì)切斷調(diào)用鏈

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 }
編碼并保存當(dāng)前圖像到 file ,如果type未指定,則根據(jù) file 自動(dòng)判斷文件類型,config為圖片設(shè)置,目前支持設(shè)置JPG圖像質(zhì)量

.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獲取或者設(shè)置圖像寬高,如果height未指定,則根據(jù)當(dāng)前寬高等比縮放

.resize(width[, height])

Set the size of the image,if the height is not specified, then scaling based on the current width and height

設(shè)置圖像寬高,如果height未指定,則根據(jù)當(dāng)前寬高等比縮放, 默認(rèn)采用 bicubic 算法。

.width([width])

Get width for the image or set width of the image獲取或設(shè)置圖像寬度

.height([height])

Get height for the image or set height of the image獲取或設(shè)置圖像高度

images.setLimit(width, height)

Set the limit size of each image  設(shè)置庫(kù)處理圖片的大小限制,設(shè)置后對(duì)所有新的操作生效(如果超限則拋出異常)

images.setGCThreshold(value)

Set the garbage collection threshold   設(shè)置圖像處理庫(kù)自動(dòng)gc的閾值(當(dāng)新增內(nèi)存使用超過(guò)該閾值時(shí),執(zhí)行垃圾回收)

images.getUsedMemory()

Get used memory (in bytes)得到圖像處理庫(kù)占用的內(nèi)存大小(單位為字節(jié))

images.gc()

Forced call garbage collection 強(qiáng)制調(diào)用V8的垃圾回收機(jī)制

https://github.com/zhangyuanwei/node-images

上述就是小編為大家分享的nodejs中怎么利用node-images中間件處理圖片了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI