http://www.perlmonks.org?node_id=224267


in reply to GD::Text Problems

You should pass an instance of GD in the constructor.
use GD; use GD::Text::Align; my $gd = GD::Image->new(800,600); # allocate colours, do other things. my $align = GD::Text::Align->new( $gd #instance of GD::Image valign => 'top', halign => 'right', ); $align->set_font('cetus.ttf', 12); $align->set_text('some string'); @bb = $align->bounding_box(200, 400, PI/3); # you can do things based on the bounding box here $align->draw(200, 400, PI/3); open(JPEG,">foo.jpg"); binmode(JPEG); print JPEG $gd->jpeg(75); close(JPEG);
I personally stick to plain GD or even worse, plain gdlib code ;) </code>

Greetz
Beatnik
... Quidquid perl dictum sit, altum viditur.

Replies are listed 'Best First'.
Re: Re: GD::Text Problems
by Anonymous Monk on Jan 04, 2003 at 16:18 UTC
    Thank you very much - I am closer than ever because it actually generates an image .. but a blank one. I'm sure its just a case of needing to specify the foreground color but all I can find in the module documentation is to set the background and fill colors
    #!/usr/bin/perl use GD; use GD::Text::Align; my $gd = GD::Image->new(150,150); $white = $gd->colorAllocate(255,255,255); # $black = $gd->colorAllocate(0,0,0); # $red = $gd->colorAllocate(255,0,0); # $blue = $gd->colorAllocate(0,0,255); $gd->transparent($white); my $align = GD::Text::Align->new( $gd, valign => 'top', halign => 'right', ); $align->set_font('cetus.ttf', 12); $align->set_text('200 Files'); @bb = $align->bounding_box(100, 100, PI/3); # you can do things based on the bounding box here $align->draw(200, 400, PI/3); open(JPEG,">foo.jpg"); binmode(JPEG); print JPEG $gd->jpeg(75); close(JPEG);