2011-04-13 58 views
4

我基本上試圖用mini_magick來寫這個命令。用mini_magick指定一個複合物的幾何圖形

gm composite -compose Copy -geometry +0+210 note-transparent1.png note-rugby.png note-rugby-e.png 

這是我的代碼:

image = MiniMagick::Image.open("note-transparent1.png") 

result = image.composite(MiniMagick::Image.open("note-rugby.png") do |c| 
    c.compose = "Copy" 
    c.geometry = "+0+210" 
end) 
result.write "note-rugby-e.png" 

的圖像進行合成,並寫入新文件;但是幾何不受尊重。圖像沒有偏移。

我也嘗試將mini_magick處理器設置爲ImageMagick而不是GraphicsMagick,但我得到了相同的結果。

任何想法?

回答

3

我在ImageMagick中使用mini_magick,下面的代碼適用於合成。

bground = MiniMagick::Image.open("bground.jpg") 
image = MiniMagick::Image.open("image.jpg") 

result = bground.composite(image) do |c| 
    c.gravity "NorthWest" 
    c.geometry '400x400+20+56' 
end 

result.write "output.jpg" 
0

根據rubydoc minimagic

first_image = MiniMagick::Image.open "first.jpg" 
second_image = MiniMagick::Image.open "second.jpg" 

result = first_image.composite(second_image) do |c| 
c.compose "Over" # OverCompositeOp 
c.geometry "+20+20" # copy second_image onto first_image from (20, 20) 
end 
result.write "output.jpg"