Saturday, October 25, 2008

RMagickで画像の端を暗くする

RMagickで画像の端を暗くするには、以下のコードを実行します。

require 'RMagick'
include Magick

# 画像の端を暗くする
images = ImageList.new("sf.jpg")

# 画像外に黒を指定してぼかす
img1 = Image.new(images[0].columns, images[0].rows){
self.background_color = "none"
}
img1.alpha = ActivateAlphaChannel
img1.virtual_pixel_method = Magick::BlackVirtualPixelMethod
img2 = img1.blur_channel(0, 10, ChannelType::AllChannels)

img3 = images[0].composite(img2, CenterGravity, 0, 0, OverCompositeOp);
img3.write("sample657a.png")

exit

元画像(sf.jpg)


出力画像(sample657a.png)


動作環境
ruby1.8.6-26/RMagick-2.3.0-ImageMagick-6.4.0-2-Q8

関連項目
RMagickをWindowsで使用するための設定

No comments: