簡體   English   中英

如何在amazon lambda函數中使用node.js進行圖像疊加和水印

[英]How to do image overlay and watermark using node.js in amazon lambda function

我在 amazons3 服務器上托管了圖像。我的客戶端想要使用 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 天,但無法繼續前進。提前感謝您的幫助!!!!

看起來您正在嘗試在 size 操作中進行覆蓋。 快速檢查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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM