http://qs1969.pair.com?node_id=11139978


in reply to How to create and save an image from RGB values

hello bliako,

also XPM format (used for icons in Tk) can be fed with an array like in my woodpeaker icon

I rewrote your exmple using GD and maybe is faster (untested).

my $W = 100; my $W = 100; use GD; # create a new image $im = new GD::Image($W,$W) or die "called to new GD::Image has failed +.";; for my $x (0..$W){ for my $y (0..$H){ my $rgb = $result->[$x + $y * $W]; next unless defined $rgb; # ARGB here, or any other scheme my $R = ($rgb & 0x00FF0000) >> 16; my $G = ($rgb & 0x0000FF00) >> 8; my $B = ($rgb & 0x000000FF); my $color = $im->colorAllocate($R, $G, $B); $im->setPixel($x, $y, $color); } } open my $outfile, '>', 'out.png' or die; binmode $outfile; print $outfile $im->png(0); # 0 is no compression. Possible values 0-9

L*

There are no rules, there are no thumbs..
Reinvent the wheel, then learn The Wheel; may be one day you reinvent one of THE WHEELS.