perlquestion
peppiv
I had GD installed on the server(FreeBSD) and haven't been able to get a script to run yet. Here's a piece of code the ISP offered, but even they can't run it.<br><br>
<code>
#!/usr/local/bin/perl
use GD;
Context: "text/html\n\n";
# create a new image
$im = new GD::Image(100,100);
# allocate some colors
$white = $im->colorAllocate(255,255,255);
$black = $im->colorAllocate(0,0,0);
$red = $im->colorAllocate(255,0,0);
$blue = $im->colorAllocate(0,0,255);
# make the background transparent and interlaced
$im->transparent($white);
$im->interlaced('true');
# Put a black frame around the picture
$im->rectangle(0,0,99,99,$black);
# Draw a blue oval
$im->arc(50,50,95,75,0,360,$blue);
# And fill it with red
$im->fill(50,50,$red);
# make sure we are writing to a binary stream
binmode STDOUT;
# Convert the image to PNG and print it on standard output
print $im->png;
</code><br>Here's the error it produces in my error log.<br><br>
[Thu Apr 4 06:23:58 2002] access to /cgi-bin/gdtrial.pl failed for XX.XXX.XXX.XX, reason: malformed header from script. Bad header=‰PNG<br><br>
I've also tried GD:Graph with this code:<br><br>
<code>
#!/usr/bin/perl
use strict;
use GD::Graph::bars;
my @data = (
["Jan-01","Feb-01","Mar-01", "Apr-01","May-01","Jun-01","Jul-01","Aug-01","Sep-01"],
[21,25,33,39,49,48,40,45,15]
);
my $graph = new GD::Graph::bars;
$graph->set(
x_label => 'Month',
y_label => 'Revenue ($1,000s)',
title => 'Monthly Online Sales for 2001',
bar_spacing => 10
)
or warn $graph->error;
$graph->plot(\@data) or die $graph->error;
open(GRAPH,">graph1.jpg") || die "Cannot open graph1.jpg: $!\n";
print GRAPH $graph->gd->jpeg(100);</code><br>
It produces the same type of error. I CPAN'd GD:Graph and it says it's up to date. What am I doing wrong? Has anyone come across a problem like this?<br><br>
TIA<br><br>
<i>peppiv</i><br><br>