iOSアプリ開発に使えるRuby製画像リサイズツール(Gemライブラリ)『resize2x』をリリースしました

  • Pocket
  • このエントリーをはてなブックマークに追加
  • 162 follow us in feedly

まえがき

今回はRubyのGemライブラリとして『resize2x』という画像リサイズツールをリリースしました。

コマンドラインでサクッと画像をリサイズするものとなっていて、できることは単純で『XXX@2x.png』など、『@2x』とい名前の付いている画像を半分のサイズにして『XXX.png』のように名前を変更して複製するものとなっています。

iOSアプリ開発などでRetinaディスプレイ用の画像ファイルと非Retinaディスプレイの画像を分けて作成するときに便利かなと思い作成しました。

今回はそのライブラリ・ツールの制作に関するお話と使い方を紹介します。

resize2x

インストール

インストールするにはRubyがインストールされており、gemが使える状態にしておく必要があります。

あと、RMagickを使っていることもあるのでImageMagickなど依存するパッケージもインストールされている必要があります。

0から環境を構築するにはちょっと大変ですが、わかる方ORすでに環境がある方は簡単にインストールできるかと思います。(適当)

っでインストールするにはgem installコマンドで

gem install resize2x

使い方

使い方はリサイズしたい画像ファイルがあるディレクトリまでcdコマンドで移動後『resize2x』のコマンドを実行するだけです。

これでカレントディレクトリに半分のサイズにリサイズされた画像ファイルができあがり!カレントディレクトリにある『XXX@2x.xxx』にマッチするファイルをすべてリサイズしますのですでにリサイズされたファイルがある方などは上書きされてしまうのでご注意を。

あと、『-o』のオプションでディレクトリを指定することで指定したディレクトリにリサイズされた画像を吐き出すことも可能です。

ためしに、1024×1024のサイズの画像2つをリサイズしてみます

$ ls
hoge@2x.jpg icon@2x.png

$ resize2x
(1/2) resized: /Users/keitarou/Dropbox/ruby/rmagick/resize2x/test2/hoge.jpg,  512x512
(2/2) resized: /Users/keitarou/Dropbox/ruby/rmagick/resize2x/test2/icon.png,  512x512

$ ls
hoge.jpg    hoge@2x.jpg icon.png    icon@2x.png

$ identify hoge.jpg hoge@2x.jpg icon.png icon@2x.png
hoge.jpg JPEG 512x512 512x512+0+0 8-bit sRGB 14KB 0.000u 0:00.000
hoge@2x.jpg[1] JPEG 1024x1024 1024x1024+0+0 8-bit sRGB 31.4KB 0.000u 0:00.000
icon.png[2] PNG 512x512 512x512+0+0 8-bit sRGB 22.8KB 0.000u 0:00.000
icon@2x.png[3] PNG 1024x1024 1024x1024+0+0 8-bit sRGB 64.5KB 0.000u 0:00.000

こんな感じです。出力先ディレクトリを指定するとこんな感じ

$ resize2x -o half
(1/2) resized: /Users/keitarou/Dropbox/ruby/rmagick/resize2x/test2/half/hoge.jpg,  512x512
(2/2) resized: /Users/keitarou/Dropbox/ruby/rmagick/resize2x/test2/half/icon.png,  512x512

$ ls half
hoge.jpg icon.png

だいたいイメージは掴めたでしょうか。

利用したライブラリなど

  • RMagick
  • Thor
  • jeweler

RMagickはRubyで画像処理を簡単にできるライブラリです。今回は単純に画像の幅と高さを半分にしています。

ThorはRubyでコマンドラインのアプリを簡単につくれるようにしてくれるライブラリで、良くお世話になっています。

jewelerはRubyGemのライブラリを簡単に作れるようにしてくれるツールで、rakeタスクでリリースからその他作業を簡単に行えるようになります。

あとがき

では、最後にRubyGemsのページとGithubのレポジトリのページを紹介して終わりです。

https://rubygems.org/gems/resize2x

https://rubygems.org/gems/resize2x

https://github.com/keitarou/resize2x

https://github.com/keitarou/resize2x

おすすめ書籍

パーフェクトRuby (PERFECT SERIES 6)
Rubyサポーターズ すがわら まさのり 寺田 玄太郎 三村 益隆 近藤 宇智朗 橋立 友宏 関口 亮一
技術評論社
売り上げランキング: 7,147

関連記事

better-errorsbetter-errors.png

Railsのエラーデバッグ画面をリッチにしてくれる『Better Errors』

まえがき RoRでエラーのデバッグ画面をリッチにしてくれるライブラリ...

記事を読む

redis-to-go-1redis-to-go-1.png

Redisのクラウドサービス『RedisToGo』をRubyやRedisCommanderから使ってみる

まえがき 最近開発者向けのクラウドサービスにハマっています、自分ですが...

記事を読む

Railsアプリをクロスドメインに対応したAPIサーバーにする

まえがき 外部に立てたRailsのサーバーをAPIサーバー化して、ロー...

記事を読む

no image

Titanium(Alloy)でファイルをincludeする。

まえがき TitaniumのAlloyで外部ファイルを呼び出すためのメ...

記事を読む

github-travisci-ruby-rspec-1github-travisci-ruby-rspec-1.png

RubyのテストをGiHub・TravisCIを使ってやってみる

まえがき 今回はTravisCIというGitHubで使える無料のCIツ...

記事を読む

新着記事

no image

PHPでRubyのirbっぽいインタラクティブなスクリプトが実行できる「boris」

まえがき PHPでもRubyのirbみたいなことがしたくて探してみたと...

記事を読む

2015年の抱負と去年の振り返り〜よちよちWEB業界1年経験して〜

まえがき あけましておめでとうございます。今年もどうぞよろしくお願いし...

記事を読む

Java SE 7 Bronze試験(1Z0-802)を受けてきました

まえがき 以前から少し受けてみたかった試験『Java SE 7 Bro...

記事を読む

HubotでJenkinsのジョブを実行する

まえがき HubotをつかってJenkinsのジョブをじっこうしてみた...

記事を読む

no image

Hubotをforeverでデーモン化する

まえがき 今回はHubotをforeverを使ってデーモン化してみた時...

記事を読む

スポンサーリンク

  • Sorry. No data so far.

PAGE TOP ↑