Hatena::ブログ(Diary)

W&R : Jazzと読書の日々 このページをアンテナに追加 RSSフィード

2016/01/24

Ruby初心者が無謀にもPictRubyで写真リサイズに挑戦してみた

寒波襲来。


Rubyはプログラミング言語

PictRuby 0.3
分類: 仕事効率化,教育
価格: 無料 (ongaeshi)

名前は知ってたんです。Ruby。日本人の人が開発した言語。まさかiOS用に開発アプリがあるとは知りませんでした。カメラロールの写真にエフェクトを掛けるのがメイン機能のようです。でもネット上のAPIにアクセスしたり、日本語の加工もできたりするみたい。ただ、やっとこさjavascriptが書けるようになった初心者の手に負えるものなのかどうか。


写真をハーフサイズにする

とりあえず触ってみます。お題は「写真のリサイズ」。ブログにスクショをアップするとき、ファイルが小さいほうがパケットを食いませんからね。モブログの節約スキルです。リサイズ。写真を選ぶと、トントントンとハーフサイズにし、そのまま自動で保存してくれるとうれしい。やっぱり作るの難しいのかなあ。不安を胸に、右上「+」で新規作成。


スクリプトを書く

ファイル名は「resizeloop.rb」にしてみました。拡張子rbはrubyのこと。ファイルを開き、中に下記スクリプトを書き込みます。def main から end の間が実行対象。

# カメラロールの写真をハーフサイズにします

def main
  loop{
    img = Image.pick_from_library  
    img.resize(img.width * 0.5, img.height * 0.5)
    img.save
   }
end

loop が繰り返し。pick_from_library でカメラロールの写真を変数imgに収めます。resize で縦横のサイズを半分にし、save でカメラロールに保存。これだけ。


さっそく実行

スクリプトの実行は右上の「Run」。カメラロールへのアクセスを許可すると、写真の一覧が出てくるので、変換したい写真をタップ。おお、次々変換できます。
しかも、どのスクリプトを実行するかはURLスキームで指定できる。たとえばTextwellからresizeloop.rbを呼び出したいなら、下記アクションでOK。

T("pictruby://resizeloop.rb");

Import Textwell ActionReSizeLoop


まとめ

初めてのRubyプログラミング。意外と簡単でした。そして、Textwellの苦手な写真加工が手軽にできる。これは良いですね。モブログの画像関係はPictRubyにお任せできそうです。きっとその筋の人にはタマラン・ツールだと思うので、どんどん作品を発表してください。無料でスクリプトを公開してもらえると僕もほくほく幸せになれます。