Imager::Transform(3) a library of register machine image transformations

SYNOPSIS


# get a list of transformations
my @funcs = Imager::Transform->list;
# create a transformation object
my $tran = Imager::Transform->new($name);
# describe it
print $tran->describe;
# a list of constant names
my @constants = $tran->constants;
# information about some of the constants
my @info = $tran->constants(@constants);

DESCRIPTION

This module provides a library of transformations that use the Imager transform2() function.

The aim is to provide a place to collect these transformations.

At some point there might be an interface to add new functions, but there's not a whole lot of point to that.

The interface is a little sparse as yet.

METHODS

my @names = Imager::Transform->list
Returns a list of the transformations.
my $desc = Imager::Transform->describe($name);
my $desc = $tran->describe()
Describes a transformation specified either by name (as a class method) or by reference (as an instance method).

The class method returns undef if there is no such transformation.

my $tran = Imager::Transform->new($name)
Create a new transformation object. Returns undef if there is no such transformation.
my @inputs = $tran->inputs;
my $inputs = $tran->inputs;
Returns a list of input image descriptions, or the number of them, depending on content.

The list contains hash references, which current contain only one member, "desc", a description of the use of the input image.

$tran->constants
Returns a list of names of constants that can be set for the transformation.
$tran->constants($name, $name, ...)
Returns a hashref for each named constant, which contains the default in key "default" and a description in key "desc".
my $out = $tran->transform(\%opts, \%constants, @imgs)
Perform the image transformation.

Returns the new image on success, or undef on failure, in which case you can use $tran->errstr to get an error message.

$tran->errstr
The error message, if any from the last image transformation.

BUGS

Needs more transformations.

AUTHOR

Tony Cook <[email protected]>