#! perl -slw use strict; use GD; sub rgb2n { unpack 'N', pack 'CCCC', 0, @_ } my @heights = map [ map int rand 256, 1 .. 500 ], 1 .. 500; my $img = GD::Image->new( 500, 500, 1 ); for my $y ( 0 .. $#heights ) { for my $x ( 0 .. $#{ $heights[ $y ] } ) { $img->setPixel( $x, $y, rgb2n( ( $heights[ $x][ $y ] ) x 3 ) ); } } binmode STDOUT; print $img->png;