Ruby

2014-10-07, ruby

画像を操作する

Rubyの拡張機能はインストールがめんどくさい(=待ち時間が長い)んですけど、一旦入ってしまうと強力ですね。画像処理ライブラリはImageMagickのラッパとして実装されているらしく、低速、との噂はあるものの機能の豊富さは嬉しい感じです。

まずはインストール。

# yum install ImageMagick-devel
# gem install rmagick

以下は、画像を読み込んで、128x128サイズのサムネイルを生成する例です。

require 'RMagick'

i = Magick::ImageList.new("photo.jpg")
t = i.resize_to_fill(128)
t.write('thumb.png')

データベースのBlobからやり取りする場合は以下のような感じになります。

require 'RMagick'

i = Magick::Image.from_blob(b_src)[0]
t = i.resize_to_fill(128)
b_dst = t.to_blob

画像をトリムせずにシンプルにリサイズしたい場合は、resizeメソッドを使います。

t = i.resize(0.5)

参考URL

この記事は役に立ちましたか?