如何使用 Minimagick 复合材料为我的徽标获得透明背景?

How to get a transparent background for my logo using Minimagick composite?

这是我的代码:

process :watermark   

def watermark
   second_image = MiniMagick::Image.open("https://s3.amazonaws.com/....logo.png")
   manipulate! do |img|
   result = img.composite(second_image) do |c|
     c.compose "Over"    # OverCompositeOp
     c.gravity "Southeast" 
   end
    result
   end
 end

问题是第二张图片显示为正方形或长方形,没有显示透明背景。

如何让我的徽标合成在具有透明背景的图像之上?

编辑

我尝试了以下代码

def watermark
  def second_image
    second_image = MiniMagick::Image.open("https://s3.amazonaws.com/...logo.png") do { "white" => transparent }
    second_image.save
  end  
  manipulate! do |img|
  result = img.composite(second_image) do |c|
     c.compose "Over"    # OverCompositeOp
     c.gravity "Southeast" # copy second_image onto first_image from (20, 20)
  end
  result
  end
 end
end

不起作用,导致 second_image 未在上传时合成,仅返回上传。

编辑 2

我的图像实际上不是透明的,:/

查看此论坛以获取答案。 http://www.imagemagick.org/discourse-server/viewtopic.php?t=20262