use strict;
use warnings;
use feature 'say';
use GD;
use Digest::MD5 'md5_hex';
say $^V;
say $GD::VERSION;
my $f = 'frog.jpg';
GD::Image-> trueColor( 1 );
my $i = GD::Image-> new( $f );
say "Image is ", ( $i-> isTrueColor ? '' : 'not ' ), 'truecolor';
printf "RGB triplet for 0,0 pixel is: %3\$d, %2\$d, %1\$d\n",
unpack 'C3', pack 'L', $i-> getPixel( 0, 0 );
__END__
v5.32.1
2.76
Image is truecolor
RGB triplet for 0,0 pixel is: 0, 248, 231
v5.10.1
2.44
Image is truecolor
RGB triplet for 0,0 pixel is: 0, 247, 231
####
>convert frog.jpg -format "%[pixel:u.p{0,0}]\n" info:
srgb(0,247,231)
####
>convert frog.jpg frog.png
####
use strict;
use warnings;
use feature 'say';
use GD;
use Digest::MD5 'md5_hex';
say $^V;
say $GD::VERSION;
my $f = 'frog.png';
GD::Image-> trueColor( 1 );
my $i = GD::Image-> new( $f );
say "Image is ", ( $i-> isTrueColor ? '' : 'not ' ), 'truecolor';
say md5_hex( $i-> png() );
__END__
v5.32.1
2.76
Image is truecolor
1b6edecaa6d0b67f7bf960113f2136c7
v5.16.3
2.49
Image is truecolor
9edf3f9e11991f2dcfd77a7e1ffbafe8
####
use strict;
use warnings;
use feature 'say';
use GD;
use Digest::MD5 'md5_hex';
say $^V;
say $GD::VERSION;
my $f = 'frog.png';
GD::Image-> trueColor( 1 );
my $i = GD::Image-> new( $f );
say "Image is ", ( $i-> isTrueColor ? '' : 'not ' ), 'truecolor';
say md5_hex( $i-> gd() );
__END__
v5.32.1
2.76
Image is truecolor
e60c6afd7eefe80050d6af4488457281
v5.16.3
2.49
Image is truecolor
e60c6afd7eefe80050d6af4488457281
v5.10.1
2.44
Image is truecolor
e60c6afd7eefe80050d6af4488457281