帯域をセーブ。画像をアップロードする前にクライアントサイドで縮小「resize」
resizeは画像のアップロード前に事前にCanvasタグを使って縮小処理を行ってアップロードを行うソフトウェアです。
これは面白いアイディア。resizeはアップロード前にCanvasタグを使って画像のリサイズ処理を行い、小さな画像としてアップロード処理を行います。
最初の画面です。まず写真を選択します。できるだけ大きいのが良いでしょう。
最近のデジカメ、スマートフォンでは画像のサイズも大きくなっていますが、実際のWebサービスではそこまで必要としないケースも多いです。そのような場合にクライアントサイドで変換してしまうというのは面白いアイディアではないでしょうか。
resizeはRuby/Sinatra製のソフトウェア(ソースコードは公開されていますがライセンスは明記されていません)です。
MOONGIFTはこう見る
JavaScriptやHTML5を使うことでサーバサイドとクライアントサイドの垣根がどんどん低くなっています。画像処理などサーバサイドでしかできないと思われていたことが、クライアントサイドでも簡単に編集したりできるようになっています。さらにresizeによってサイズの変更までできます。
Webアプリケーションの開発においてはこうしたクライアントサイドのパワーをいかに使うかが肝になってきます。うまく使えばスケーラブルに、サーバ負荷を小さく開発できるようになるでしょう。もちろんHTML5に限定することなくクライアント/サーバサイドの双方で対応を考える必要はあると思われます。