M.C.P.C.

―むり・くり―プラスコミュニケーション(更新終了)


| トップページ |

2011年11月12日 02:23

Mojolicious::LiteとImagerでモザイク画像にするウェブユーティリティサービスを作る

このエントリーをはてなブックマークに追加 mixiチェック

みんな大好きモザイク表現を、Mojoliciousと、Imagerを使って作ってみました。

Filename: mosaic.pl

#!/usr/bin/perl
 
use Imager;
use Mojolicious::Lite;
 
get '/mosaic/(*url)' => sub {
  my $self = shift;
  my $img = Imager->new;
  my $url = $self->stash('url');
  my $data = $self->ua->get($url)->res->body;
  $img->read( data => $data, ) or die $img->errstr;
  # $img = $img->scale( xpixels => 48, ypixels => 48,); # お好みで
  $img->filter(type=>"mosaic", size=>6);
  my $newdata;
  $img->write( data => \$newdata, type => 'png' ) or die $img->errstr;
  $self->render_data( $newdata, format => 'png' );
};
 
app->start;

これを perl mosaic.pl daemon で起動すると、http://example.com:3000/mosaic/http://hoge.com/gazou.jpg とかで http://hoge.com/gazou.jpg の画像にモザイクがかった画像が得られます。

こんなの、何の必要があるの?って思うかもしれませんが、


今作っているTwitterのクライアントでプロフィールアイコンにモザイクかけたかったんですよね。

投稿 大野 義貴 [] | |

トラックバック(0)

トラックバックURL: http://blog.dtpwiki.jp/MTOS/mt-tb.cgi/3768

コメントする