Perl使用GD进行图形编程

时间:2013-06-16 21:48:50

标签: perl gd

gd.pl

#!/usr/bin/perl -w


use strict;
use GD;


my $image = GD::Image->newPalette(401,201);

my $gray = $image->colorAllocate(200,200,200);
my $red = $image->colorAllocate(255,0,0);
my $black = $image->colorAllocate(0,0,0);


#draw a field of polka dots with random diameters
foreach my $i (0..10) {
    foreach my $j (0..5) {
            my $d = rand(50)+1;
            $image->arc($i*40, $j*40, $d, $d, 0, 360, $red);
            $image->fill($i*40, $j*40, $red);
    }
}


#draw the text in black
my ($x1, $y1, $x2, $y2, $x3, $y3, $x4, $y4) = $image->stringFT($black, "/home/eugenep/arial.ttf", 48,0,40,120, "hello world");

#outline the text with a black box
$image->rectangle($x1-10, $y1+10, $x3+10, $y3-10, $black);

print $image->png;

并且它在命令提示符下不显示任何内容,而是显示一堆奇怪的字符。

有人告诉我问题可能是什么?

1 个答案:

答案 0 :(得分:3)

没有错误。 “一堆奇怪的字符”是它生成的PNG文件,但你不能指望控制台显示图像。

将此脚本的输出保存到文件中(在Linux上:./yourscript.pl > file.png;在Win上,您可能需要将$image->png保存到文件中),在浏览器或图像查看器中打开生成的文件,你会看到图像。