Node 服務端處理圖片
服務端進行圖片處理是很常見的需求,但是Node在這一塊相對來說比較薄弱。找了幾個比較常見的模塊來解決問題。
gm
- 使用OpenMP進行多線程圖片處理,增強了通過擴展CPU提高處理能力。
- 支持大圖片的處理,並且已經做過GB級別的圖像處理實驗。
- 能夠動態的生成圖片,特別適用於互聯網的應用。
GraphicsMagick 是一個專注於提供圖片處理工具的庫集合,它是從 ImageMagick 5.5.2 分支出來。更為精簡和效率。
安裝
安裝GraphicsMagick或者是ImageMagick
mac用戶可以通過 brew 安裝。
brew install graphicsmagick
# or
brew install graphicsmagick
npm install gm
項目中引入
npm install gm
const gm = require('gm')
使用
gm 的功能很強大這里做個簡單的例子,給頭像加個徽章。
const fs = require("fs");
const gm = require("gm");
gm("../assests/images/avatar.jpg")
.resize(50, 50)
.font("../assests/font/font.ttc")
.fontSize(12)
.fill("#ffffff")
.drawText(0, 38, "注冊會員")
.write("../assests/images/output.png", function(err) {
if (!err) console.log("done");
});
效果


