だるそうだなーと思ってたけど、まあまあ簡単だった。
しかし、webiblo.plはImage::Resizeに依存していたので嫌だなーと思ったのでImagerを使うように書き換えた。
diff --git a/webiblo.pl b/webiblo.pl index ba1fef0..c9af2d2 100755 --- a/webiblo.pl +++ b/webiblo.pl @@ -7,7 +7,7 @@ use LWP::Simple; use URI; use HTML::TreeBuilder::XPath; use Text::Xslate; -use Image::Resize; +use Imager; my $style = HTML::Element->new('style'); $style->attr('type', 'text/css'); @@ -30,11 +30,13 @@ if ( $book->{cover_image} ) { my $file = ($uri->path_segments)[-1]; mirror($uri, "out/$file") unless -f "out/$file"; $book->{cover_file} = $file; - my $image = Image::Resize->new("out/$file"); - my $gd = $image->resize(600, 800); - open my $out, '>', "out/$file" or die $!; - print $out $gd->jpeg; - close $out; + my $image = Imager->new; + $image->read(file => "out/$file") or die $image->errstr; + $image->scale( + xpixels => 600, + ypixels => 800, + ); + $image->write(file => "out/$file") or die $image->errstr; } $book->{parts}->[0]->{chapters} = $book->{chapters} unless $book->{parts};
mobiで吐き出してくれるのはすごくいい!自分で設定ファイル書くのは少し辛いものがあるけど。。
Imagerの使い方とか使う機会がほとんどないから、すぐ忘れる。で、perldocで探すんだけど、perldocの検索ってどうやればいいんだろう。
いつもはこんな感じで検索する。もしくはperldocを実行したときのPAGERで検索。
% perldoc Imager | grep scale
見つからない場合は、ほかのモジュールを探す。Imager::Cookbookでまた検索したりとかする。だるい。
Imagerの場合は、perldoc Imagerすればどこに何が書いてあるのか分かるようになってるけど、知らないモジュールを調べるときにもっと簡単にPODの中身を検索する方法はないのかな。