Mojolicious::LiteとImagerでモザイク画像にするウェブユーティリティサービスを作る
スポンサードリンク
みんな大好きモザイク表現を、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





![: Amazon.co.jp: プラスティック・メモリーズ 1【完全生産限定版】(イベントチケット優先販売申込券付) [Blu-ray]](/lists/_9/B00VWX66E8.jpg)
![: Amazon.co.jp: プラスティック・メモリーズ 2【完全生産限定版】[Blu-ray]](/lists/_9/B00VWX66K2.jpg)
![: Amazon.co.jp: プラスティック・メモリーズ 3【完全生産限定版】[Blu-ray]](/lists/_9/B00VWX6MV0.jpg)
![: Amazon.co.jp: プラスティック・メモリーズ 4【完全生産限定版】[Blu-ray]](/lists/_9/B00VWX66IO.jpg)
![: Amazon.co.jp: プラスティック・メモリーズ 5【完全生産限定版】[Blu-ray]](/lists/_9/B00VWX6Y0E.jpg)
![: Amazon.co.jp: プラスティック・メモリーズ 6【完全生産限定版】[Blu-ray]](/lists/_9/B00VWX69D6.jpg)


コメントする