RMagickで画像の上下を半透明にするには、以下のコードを実行します。
require 'RMagick'
include Magick
# 上下が半透明になった画像の生成
images = ImageList.new("sf.jpg")
images[0].alpha = ActivateAlphaChannel
mo = images.fx("abs(sin(pi*j/h))", Magick::AlphaChannel)
mo.write("sample532a.png")
# クリーム色の背景と重ね合わせ
img2 = Image.new(images[0].columns+20, images[0].rows+20){
self.background_color = "#ffffe0"
}
img3 = img2.composite(mo, CenterGravity, 0, 0, OverCompositeOp);
img3.write("sample532b.png")
exit
元画像(sf.jpg)
出力画像(sample532a.png)
出力画像(sample532b.png)
動作環境
ruby1.8.6-26/RMagick-2.3.0-ImageMagick-6.4.0-2-Q8
関連項目
ImageMagickで画像の上下を半透明グラデーションにする (Convertコマンドでの同様の処理)
No comments:
Post a Comment