Node.js 图像处理包 Node-gm

MIT
JavaScript 查看源码»
跨平台
2015-05-08
叶秀兰

gm 是 Node.js 的 GraphicsMagickImageMagick

常规使用:

var fs = require('fs')
  , gm = require('./gm');

// resize and remove EXIF profile data
gm('/path/to/my/img.jpg')
.resize(240, 240)
.noProfile()
.write('/path/to/resize.png', function (err) {
  if (!err) console.log('done');
});

// obtain the size of an image
gm('/path/to/my/img.jpg')
.size(function (err, size) {
  if (!err)
    console.log(size.width > size.height ? 'wider' : 'taller than you');
});

// output all available image properties
gm('/path/to/img.png')
.identify(function (err, data) {
  if (!err) console.log(data)
});

// pull out the first frame of an animated gif and save as png
gm('/path/to/animated.gif[0]')
.write('/path/to/firstframe.png', function (err) {
  if (err) console.log('aaw, shucks');
});

// auto-orient an image
gm('/path/to/img.jpg')
.autoOrient()
.write('/path/to/oriented.jpg', function (err) {
  if (err) ...
})

// crazytown
gm('/path/to/my/img.jpg')
.flip()
.magnify()
.rotate('green', 45)
.blur(7, 3)
.crop(300, 300, 150, 130)
.edge(3)
.write('/path/to/crazy.jpg', function (err) {
  if (!err) console.log('crazytown has arrived');
})

// annotate an image
gm('/path/to/my/img.jpg')
.stroke("#ffffff")
.drawCircle(10, 10, 20, 10)
.font("Helvetica.ttf", 12)
.drawText(30, 20, "GMagick!")
.write("/path/to/drawing.png", function (err) {
  if (!err) console.log('done');
});

// creating an image
gm(200, 400, "#ddff99f3")
.drawText(10, 50, "from scratch")
.write("/path/to/brandNewImg.jpg", function (err) {
  // ...
});


加载中

评论(0)

暂无评论

暂无资讯

暂无问答

LINUX中gm的使用

我有个NODEJS程序,之前用gm(file_path).size()来获取图片尺寸一直不成功,折腾了一整天,因为文档较少,并且都不是很正确,终于给研究出来了; Linux中gm能很方便的获取图片的尺寸等图片操作,...

2016/02/17 18:11
24
1
GraphicsMagick+im4java 实现高质量大图的处理

GraphicsMagick下载地址:http://www.skycn.com/soft/appid/398142.html im4java maven 配置 <dependency>       <groupId>org.im4java</groupId>       <artifactId>im4java</ar...

2015/01/05 15:46
121
0
奇迹世界服务器架构(1)

1、服务器内容 a、不同机器上的分为 DBProxy //数据库 Guild //公会数据 Master //主服务器 Agent //副本服务器 4种服务器,代码提供了很清晰的每个服务器的HANDLER FUNC TABLE(HASH)。 cl...

2016/06/20 13:39
2
0
奇迹世界服务器架构(1)

1、服务器内容 a、不同机器上的分为 DBProxy //数据库 Guild //公会数据 Master //主服务器 Agent //副本服务器 4种服务器,代码提供了很清晰的每个服务器的HANDLER FUNC TABLE(HASH)。 cl...

2016/06/20 13:39
1
0
奇迹世界服务器架构(1)

1、服务器内容 a、不同机器上的分为 DBProxy //数据库 Guild //公会数据 Master //主服务器 Agent //副本服务器 4种服务器,代码提供了很清晰的每个服务器的HANDLER FUNC TABLE(HASH)。 cl...

2016/06/20 13:39
1
0
奇迹世界服务器架构(1)

1、服务器内容 a、不同机器上的分为 DBProxy //数据库 Guild //公会数据 Master //主服务器 Agent //副本服务器 4种服务器,代码提供了很清晰的每个服务器的HANDLER FUNC TABLE(HASH)。 cl...

2016/06/20 13:41
1
0
GraphicsMagick的命令概览

GraphicsMagick是从 ImageMagick 5.5.2 分支出来的,但是现在他变得更稳定和优秀,GM更小更容易安装、GM更有效率、GM的手册非常丰富GraphicsMagick的命令与ImageMagick基本是一样的。...

2015/12/04 14:36
293
0
Error: spawn ENOMEM问题

child_process.js:948 throw errnoException(process._errno, 'spawn'); ^ Error: spawn ENOMEM at errnoException (child_process.js:1001:11) at ChildProcess.spawn (child_process.js:94...

2016/11/03 08:52
86
0
RabbitMQ高可用队列的实现

翻译了RabbitMQ GM一致性算法

2016/12/05 20:31
1K
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部