Unless I'm misreading Imager's docs, or it works in some bizarre ways, you're duplicating a thin line of pixels at each border. I think you want top 0, bottom 149 in one picture, and top 150, bottom 300 in the other. Similarly for left and right.my $newImage01 = $img->crop( left=>0 , right=>218, to +p=>0 , bottom=>150 ) || die "$message: ($!)\n"; my $newImage02 = $img->crop( left=>218, right=>437, to +p=>0 , bottom=>150 ) || die "$message ($)): ($!)\n"; my $newImage03 = $img->crop( left=>437, right=>654, to +p=>0 , bottom=>150 ) || die "$message ($_): ($!)\n"; my $newImage04 = $img->crop( left=>0 , right=>218, to +p=>150, bottom=>300 ) || die "$message ($_): ($!)\n"; my $newImage05 = $img->crop( left=>218, right=>437, to +p=>150, bottom=>300 ) || die "$message ($_): ($!)\n"; my $newImage06 = $img->crop( left=>437, right=>654, to +p=>150, bottom=>300 ) || die "$message ($_): ($!)\n";
On a more general note, since you'll be now editing this portion of the code anyway {grin}, I'd get rid of that complex series of constants and use a computed loop anyway.
-- Randal L. Schwartz, Perl hacker
In reply to •Re: altsense.net image splitter
by merlyn
in thread altsense.net image splitter
by djw
For: | Use: | ||
& | & | ||
< | < | ||
> | > | ||
[ | [ | ||
] | ] |