Interface to gd graphics library
[% USE im = GD.Image(width, height) %]
[% FILTER null; USE gdc = GD.Constants; USE im = GD.Image(200,100); black = im.colorAllocate(0 ,0, 0); red = im.colorAllocate(255,0, 0); r = im.string(gdc.gdLargeFont, 10, 10, "Large Red Text", red); im.png | stdout(1); END; -%]
[% FILTER null; USE im = GD.Image(100,100); # allocate some colors black = im.colorAllocate(0, 0, 0); red = im.colorAllocate(255,0, 0); blue = im.colorAllocate(0, 0, 255); # Draw a blue oval im.arc(50,50,95,75,0,360,blue); # And fill it with red im.fill(50,50,red); # Output binary image in PNG format im.png | stdout(1); END; -%]
[% FILTER null; USE im = GD.Image(100,100); USE c = GD.Constants; USE poly = GD.Polygon;
# 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); green = im.colorAllocate(0, 255,0);
# 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);
# Draw a blue triangle poly.addPt(50,0); poly.addPt(99,99); poly.addPt(0,99); im.filledPolygon(poly, blue);
# Output binary image in PNG format im.png | stdout(1); END; -%]
The \s-1GD\s0.Image plugin provides an interface to \s-1GD\s0.pm's GD::Image class. The GD::Image class is the main interface to \s-1GD\s0.pm.
It is very important that no extraneous template output appear before or after the image. Since some methods return values that would otherwise appear in the output, it is recommended that \s-1GD\s0.Image code be wrapped in a null filter. The methods that produce the final output (eg, png, jpeg, gd etc) can then explicitly make their output appear by using the stdout filter, with a non-zero argument to force binary mode (required for non-modern operating systems).
See \s-1GD\s0 for a complete description of the \s-1GD\s0 library and all the methods that can be called via the \s-1GD\s0.Image plugin. See Template::Plugin::GD::Constants for a plugin that allows you access to \s-1GD\s0.pm's constants.
Thomas Boutell wrote the \s-1GD\s0 graphics library.
Lincoln D. Stein wrote the Perl \s-1GD\s0 modules that interface to it.
Craig Barratt <[email protected]> wrote the original \s-1GD\s0 plugins for the Template Toolkit (2001).
Andy Wardley <[email protected]> extracted them from the \s-1TT\s0 core into a separate distribution for \s-1TT\s0 version 2.15.
Copyright (C) 2001 Craig Barratt <[email protected]>, 2006 Andy Wardley <[email protected]>.
The \s-1GD\s0.pm interface is copyright 1995-2000, Lincoln D. Stein.
This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Template::Plugin::GD, \s-1GD\s0