如何在亚马逊 lambda 函数中使用 node.js 进行图像叠加和水印
How to do image overlay and watermark using node.js in amazon lambda function
我在 amazons3 上托管了图像 server.my 客户端想要使用 amazon lambda 函数处理图像。我遵循了以下示例:http://docs.aws.amazon.com/lambda/latest/dg/walkthrough-s3-events-adminuser-create-test-function-create-function.html
调整大小是可以的。但是我也想要图像的叠加和水印。但是没有办法。我尝试过使用 imagemagick[https://www.npmjs.com/package/gm],因为它似乎将路径作为参数,而 s3 图像路径对我没有帮助。我认为显而易见的原因是它们不能作为目录中的图像路径直接访问。
关于如何实现这一目标的任何建议。我坚持了最后 3 天,但无法前进。提前感谢您的帮助!!!
看起来您正在尝试在大小操作中进行叠加。在 GitHub 上的 gm 存储库中快速检查显示,可能的解决方案存在问题。似乎认为复合操作接受要从中读取的流。关于您的代码,我建议重构以将操作链接在一起。不过,我不确定我是否了解写入流在您的原始函数中的去向。让我知道这是否有帮助!
var scalingFactor = Math.min(
newSize / size.width,
newSize / size.height
);
var width = scalingFactor * size.width;
var height = scalingFactor * size.height;
gm(response.Body)
.autoOrient()
.resize(width, height)
.gravity('SouthEast')
.draw('image Over 0,0 0,0 ' + getAppPath() + '/path/to/wm-bas.png')
.stream('PNG') // This converts the whole thing to a png, not sure if you want this
.pipe(writeStream) // Change this
相关文章:
- 更改标记.js图像/链接表达式
- 在safari和chrome中,js图像加载产生了奇怪的结果
- 节点 js 流星 js 图像文件上传图像损坏
- 使用像素检测后无法拖动Kinetic.JS图像
- Ajax/Js图像上传器:创建重复的预览图像
- 加载一个js图像
- 平滑幻灯片.js图像预加载
- Js 图像滑块,中间垂直对齐
- 如何将文本框弹出窗口(Jquery 工具提示或类似工具)添加到画布中的 Fabric JS 图像
- 将图像上传到节点.js图像“未定义
- 自定义 JS 图像查看器在每次按下“下一步”键后加载速度较慢
- 三.js图像纹理调整大小消息
- JS图像转换不起作用
- 关于为Raphaë添加淡入淡出效果的问题;l.js图像元素
- Fabric.js图像上的圆形边界框
- 鼠标点击JS图像替换
- JS图像上传失败OSX Localhost
- 搜索js图像裁剪插件,无需jquery
- Angular JS图像数组编码麻烦
- JS:图像翻转