#! perl -slw use strict; use GD; our $X ||= 500; our $Y ||= 500; my $img = new GD::Image( 2*$X, $Y, 1 ); my $white = $img->colorAllocate( 255, 255, 255 ); my $black = $img->colorAllocate( 0, 0, 0 ); $img->filledRectangle( 0,0, $img->getBounds, $white ); ## No anti-aliasing for my $y ( map{ $_ * 20 } 0 .. $Y/ 20 ) { $img->line( 0, 0, $X, $y, $black ); } for my $x ( map{ $_ * 20 } 0 .. $X/20 ) { $img->line( 0, 0, $x, $Y, $black ); } ## Same thing antialiased $img->setAntiAliased( $black ); for my $y ( map{ $_ * 20 } 0 .. $Y/20 ) { $img->line( $X, 0, 2*$X, $y, gdAntiAliased ); } for my $x ( map{ $_ * 20 } 0 .. $X/20 ) { $img->line( $X, 0, $X+$x, $Y, gdAntiAliased ); } open PNG, '>:raw', 'test.png' or die $!; print PNG $img->png( 9 ); close PNG; system "test.png"; ## Adjust to start your favourite picture viewer.