Rubyで画像の解像度を変更してみる

iPhone 3Gの写真画像の解像度は1600×1200で出力されますが、
これだとブログで使う時に大きいかな・・・と思って、
今までPhotoshopなどで解像度を落とす作業をしていました。
でもこれだけにPhotoshopを立ち上げるのはな・・・と億劫になるのもショッチュウです。

そこでRubyで画像サイズを変更するスクリプトを作ってみました。
Mac Snow Leopard, Ruby 1.9.3p194です。

写真の解像度を落としたかったのでJPEG画像だけを対象にしています。
引数にファイル名を渡して実行すると、同じ階層に_640-480をくっつけて新たに出力します。

前準備

ImageMagickとRMagickが必要です。
[shell]
$ sudo port selfupdate
$ sudo port install ImageMagick
$ sudo gem install rmagick
[/shell]

Rubyスクリプト

[ruby]
# encoding: UTF-8

require ‘rubygems’
require ‘rmagick’

scale = 0.4 # 元サイズが1.0の時、変換後の画像のサイズのパーセント

for fname in ARGV do
img = Magick::Image.read( fname ).first
img.resize!( scale )
img.write(“#{fname}_640-480.jpg”)
end
[/ruby]

実行

[shell]
$ ruby imgresize.rb “ファイル名” [“ファイル名” “ファイル名” ・・・]
[/shell]

参考にさせていただいたサイト

ありがとうございます。


出水市でWeb屋やってます。Webサイト作ったり、サーバ設定したりしている釣りの好きなMacユーザーです。 ドラクエ5のキラーパンサーにはゲレゲレと名付けました。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

コメントする

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください