【发布时间】:2018-09-20 21:26:12
【问题描述】:
这个 imagemagick cli 命令的等效 nodejs gm 库 https://github.com/aheckmann/gm 命令是什么?
imagemagick cli 命令在透明背景上分层多个图像:
convert -size 669x122 xc:none img1.jpg -geometry +223+0 -composite
img2.jpg -geometry +251+46 -composite
img3.png -geometry +283+46 -composite
img4.jpg -geometry +446+61 -composite
img5.jpg -geometry +223+61 -composite
img6.jpg -geometry +0+61 -composite
output.png
gm 库命令将是:?
const gm = require('gm').subClass({
imageMagick: true // im binaries are already installed on lambda functions
})
gm()
.out('-size 669x122 xc:none
img1.jpg -geometry +223+0 -composite
img2.jpg -geometry +251+46 -composite
img3.png -geometry +283+46 -composite
img4.jpg -geometry +446+61 -composite
img5.jpg -geometry +223+61 -composite
img6.jpg -geometry +0+61 -composite
output.png')
.write()
我是 nodejs 新手,它将在 aws lambda 函数上运行。 Imagemagick 二进制文件预装在 lambda 上。除了我最初的问题,我应该只使用 exec() nodejs 功能来传递这个字符串还是使用 nodejs gm 库有好处?
【问题讨论】:
-
你必须在
node...stackoverflow.com/q/37586684/2836621中添加很多大括号和圆括号和点才能做任何事情。 -
是的,但是我将如何遍历具有 x/y 坐标的图像数组来创建带有点的 gm 调用?在文档中我看到:“如果 gm 没有为您提供您需要的方法或无法按您的意愿工作,您可以简单地使用 gm().in() 或 gm().out() 设置您自己的论据。”我想我会做一些测试,但希望熟悉 gm 的人能够指导我更快一点。
标签: node.js aws-lambda imagemagick graphicsmagick gm