Imagerを使ってみた
Imagerを使って、bmpファイルをモノクロに変換してみました。
突っ込み所満載ですが、とりあえず何かして保存してみました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | use warnings; use strict; use Imager; my $img = Imager->new( file => $ARGV [0] ) or die Imager->errstr(); for my $y (0.. $img ->getheight-1) { my @colors = $img ->getscanline( y => $y ); my @pixels = (); foreach my $color ( @colors ) { my ( $red , $green , $blue , $alpha ) = $color ->rgba; my $y = $red + $green + $green + $blue ; $y = int ( $y / 4 ); push @pixels , ( $y , $y , $y , $alpha ); } $img ->setscanline( y => $y , pixels => pack ( 'C*' , @pixels ) ); } $img -> write ( file => 'result.bmp' ) or die "Cannot write: " , $img ->errstr; __END__ |
次は、最適化かな!
じゃなくて、jpegやpngのlibを入れたいデス。
おしまい。
Leave a Comment