Node.js 服务端处理图片

Node 服务端处理图片

服务端进行图片处理是很常见的需求,但是Node在这一块相对来说比较薄弱。找了几个比较常见的模块来解决问题。

gm

GraphicsMagick for node

  • 使用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");
  });

效果

处理前


处理后

node-images

参考资料

posted @ 2019-08-19 16:49  oasis_cuke  阅读(1082)  评论(0编辑  收藏  举报