Apache-Wyrd
view release on metacpan or search on metacpan
Wyrd/Site/GDButton.pm view on Meta::CPAN
$image->copyResampled($base_image, 0, 0, 0, 0, $self->{'width'} * 5, $self->{'height'} * 5, $self->{'width'}, $self->{'height'});
} else {
#Draw everything at 5 times the given size, since font shape and spacing issues are less prominent
$image= GD::Image->new($self->{'width'} * 5, $self->{'height'} * 5);
my $bg = $image->colorAllocate($self->_get_color($self->{'bgcolor'}));
$image->filledRectangle(0, 0, $self->{'width'} * 5, $self->{'height'} * 5, $bg);
}
my $fg = $image->colorAllocate($self->_get_color($self->{'color'}));
#First get the size of the text image. Since font shapes falling below
#the drawing line will throw off the placment, this value will be taken
#into account by _get_startpoint, which attempts to place the text at a
#more "natural" location. This setting is overridden with the "absolute"
#flag.
my @abstract = GD::Image->stringFT($antialias * $fg, $self->{'font'}, $self->{'size'} * 5, 0, 0, 0, $self->{'text'});
my ($x, $y) = $self->_get_startpoint(@abstract);
#Then render the actual text using the calculated start point.
my @bounds = $image->stringFT($antialias * $fg, $self->{'font'}, $self->{'size'} * 5, 0, $x, $y, $self->{'text'}, {resolution => "72,72", kerning => 1});
#Shrink it down to 1/5 the rendered size.
( run in 0.234 second using v1.01-cache-2.11-cpan-496ff517765 )