Provided by: libtemplate-plugin-gd-perl_2.66-2_all bug

NAME

       Template::Plugin::GD::Text::Wrap - Break and wrap strings in GD images

SYNOPSIS

           [% USE align = GD.Text.Wrap(gd_image); %]

EXAMPLES

           [% FILTER null;
               USE gd  = GD.Image(200,400);
               USE gdc = GD.Constants;
               black = gd.colorAllocate(0,   0, 0);
               green = gd.colorAllocate(0, 255, 0);
               txt = "This is some long text. " | repeat(10);
               USE wrapbox = GD.Text.Wrap(gd,
                line_space  => 4,
                color       => green,
                text        => txt,
               );
               wrapbox.set_font(gdc.gdMediumBoldFont);
               wrapbox.set(align => 'center', width => 160);
               wrapbox.draw(20, 20);
               gd.png | stdout(1);
             END;
           -%]

           [% txt = BLOCK -%]
           Lorem ipsum dolor sit amet, consectetuer adipiscing elit,
           sed diam nonummy nibh euismod tincidunt ut laoreet dolore
           magna aliquam erat volutpat.
           [% END -%]
           [% FILTER null;
               #
               # This example follows the example in GD::Text::Wrap, except
               # we create a second image that is a copy just enough of the
               # first image to hold the final text, plus a border.
               #
               USE gd  = GD.Image(400,400);
               USE gdc = GD.Constants;
               green = gd.colorAllocate(0, 255, 0);
               blue  = gd.colorAllocate(0, 0, 255);
               USE wrapbox = GD.Text.Wrap(gd,
                line_space  => 4,
                color       => green,
                text        => txt,
               );
               wrapbox.set_font(gdc.gdMediumBoldFont);
               wrapbox.set(align => 'center', width => 140);
               rect = wrapbox.get_bounds(5, 5);
               x0 = rect.0;
               y0 = rect.1;
               x1 = rect.2 + 9;
               y1 = rect.3 + 9;
               gd.filledRectangle(0, 0, x1, y1, blue);
               gd.rectangle(0, 0, x1, y1, green);
               wrapbox.draw(x0, y0);
               nx = x1 + 1;
               ny = y1 + 1;
               USE gd2 = GD.Image(nx, ny);
               gd2.copy(gd, 0, 0, 0, 0, x1, y1);
               gd2.png | stdout(1);
              END;
           -%]

DESCRIPTION

       The GD.Text.Wrap plugin provides an interface to the GD::Text::Wrap module. It allows
       multiples line of text to be drawn in GD images with various wrapping and alignment.

       See GD::Text::Wrap for more details. See Template::Plugin::GD::Text::Align for a plugin
       that allow you to draw text with various alignment and orientation.

AUTHOR

       Thomas Boutell wrote the GD graphics library.

       Lincoln D. Stein wrote the Perl GD modules that interface to it and Martien Verbruggen
       wrote the GD::Text module.

       Craig Barratt <craig@arraycomm.com> wrote the original GD plugins for the Template Toolkit
       (2001).

       Andy Wardley <abw@cpan.org> extracted them from the TT core into a separate distribution
       for TT version 2.15.

       These modules are looking for a new maintainer.  Please contact Andy Wardley if you are
       willing to help out.

COPYRIGHT

       Copyright (C) 2001 Craig Barratt <craig@arraycomm.com>, 2006 Andy Wardley <abw@cpan.org>.

       GD::Text is copyright 1999 Martien Verbruggen.

       This module is free software; you can redistribute it and/or modify it under the same
       terms as Perl itself.

SEE ALSO

       Template::Plugin::GD, Template::Plugin::GD::Text, GD