2013-05-25 libthumbのRuby拡張ライブラリ C Ruby Exifファイルのサムネイルを取得するライブラリ(libthumb)をRubyで使いたいと思い、拡張ライブラリを作ってみました。 gemファイル exif_thumbnail-0.0.1.gem ソース https://github.com/nkmrshn/exif_thumbnail 実行例 これは、ruby 1.9.3で実行した例です。 $ irb > require 'exif_thumbnail' => true > foo = EXIFThumbnail.read("/Users/nkmrshn/Pictures/FOOD.JPG") => # > foo.length => 12107 > foo.orientation => 6 > File.binwrite("/Users/nkmrshn/Desktop/Thumbnail.jpg", foo.data) => 12107 > 余談 Rubyの拡張ライブラリやgemを作るのはこれが初めてで、いろいろ調べてやっと動くものができました。疑問点も多々あり、勉強不足です。例えば、unsigned char *をRubyに返すには、なんでchar *にキャストして、rb_str_newで変換すればよいのか、またこの方法で良いのかも含め、よくわかっていません。