require 'RMagick'
include Magick
# 画像サイズ
sx = 150
sy = 150
# 角丸サイズ
rx = 20
ry = 20
img = ImageList.new
img.new_image(sx, sy){
self.background_color = "none"
}
img[0].alpha = ActivateAlphaChannel
dr = Draw.new
# フィル色
dr.fill = "white"
# 角丸四角を描画
dr.roundrectangle(0, 0, sx-1, sy-1, rx, ry)
dr.draw(img[0])
img.new_image(2, 1, GradientFill.new(0, 0, 0, 10, "#FFFA6C", "#FF8B6C"))
img[1].alpha = ActivateAlphaChannel
mo = img.fx("u.p.r>0?v.p{(1-sin(pi*j/h)),1}:0", Magick::AllChannels)
mo.write("sample493a.png")
exit
出力画像(sample493a.png)
動作環境
ruby1.8.6-26/RMagick-2.3.0-ImageMagick-6.4.0-2-Q8
関連項目
ImageMagickで任意の2色の上下グラデーションの角丸四角を描画する (Convertコマンドで同様の処理)
No comments:
Post a Comment