Ruby の RMagick を使ってみる
このページでは, Ruby の RMagick を使って,次のことを行ってみる.
- 画像ファイルの読み込み: Magick::ImageList.new
- 画像フォーマットの取得: format
- 画像の幅,高さの取得: columns, rows
- 画像値の取得: Magick::Image::View
- 画像ファイルの書き出し: write
- 画像のサイズ変更: resize
- 画像のサムネイル: thumbnail
- 画像の切り抜き: crop
- 画像のセグメンテーション: segment
- 画像の縦方向の結合と横方向の結合: append
【関連する外部ページ】: http://www.simplesystems.org/RMagick/doc/index.html
前準備
- Ruby 処理系と RubyGems のインストールが済んでいること。
◆ Ubuntu でのインストール手順(例)
sudo apt -y update sudo apt -y install ruby-full rubygems
- JRuby を使う場合に限り,Windows での Java JDK 18 (Java SE Development Kit 18) のインストールが済んでいること.
- ImageMagick と GraphicsMagick と ImageMagick Ruby インタフェース (RMagick) を使ってインストール
- Windows の場合のインストール手順例
- Linux の場合のインストール手順例
* Linux の場合
RMagick はruby-1.8 系列, Ruby 1.9 系列で動く(確認済み). JRuby-1.4, は未確認です.
* Windows の場合
RMagick は Windows 用のバイナリファイルを使うが,ruby-1.8 系列 では動く (JRuby-1.4 も OK).つまり ruby-1.9 系列ではだめ (2009/10時点). (残念ながら私にはソースコードからビルドする技量が無い)
Ruby RMagick のプログラム例
以下,プログラムの断片を示している. Linuxでの動作例も付けています.Windows でもほぼ同じ手順で動くはずです. ここでは,画像ファイルとして lena_std.jpg を使っています.
- RMagick の読み込み.
これは,RMagick を使うときに必ず必要.
require 'rubygems' require 'RMagick'
- 画像ファイルの読み込み: Magick::ImageList.new
- 画像フォーマットの取得: format
- 画像の幅,高さの取得: columns, rows
- 画像値の取得: Magick::Image::View
- 画像のサイズ変更: resize
- 画像のサムネイル: thumbnail
- 画像の切り抜き: crop
- 画像のセグメンテーション: segment
- 画像の縦方向の結合と横方向の結合: append