Six Apart Code

<<

NAME

MT::Image - Movable Type image manipulation routines

SYNOPSIS

    use MT::Image;
    my $img = MT::Image->new( Filename => '/path/to/image.jpg' );
    my($blob, $w, $h) = $img->scale( Width => 100 );

    open FH, ">thumb.jpg" or die $!;
    binmode FH;
    print FH $blob;
    close FH;

DESCRIPTION

MT::Image contains image manipulation routines using either the NetPBM tools or the ImageMagick and Image::Magick Perl module. The backend framework used (NetPBM or ImageMagick) depends on the value of the ImageDriver setting in the mt.cfg file (or, correspondingly, set on an instance of the MT::ConfigMgr class).

Currently all this is used for is to create thumbnails from uploaded images.

USAGE

MT::Image->new(%arg)

Constructs a new MT::Image object. Returns the new object on success; on error, returns undef, and the error message is in MT::Image->errstr.

%arg can contain:

  • Filename
  • The path to an image to load.

  • Data
  • The actual contents of an image, already loaded from a file, a database, etc.

  • Type
  • The image format of the data in Data. This should be either JPG or GIF.

$img->scale(%arg)

Creates a thumbnail from the image represented by $img; on success, returns a list containing the binary contents of the thumbnail image, the width of the scaled image, and the height of the scaled image. On error, returns undef, and the error message is in $img->errstr.

%arg can contain:

  • Width
  • Height
  • The width and height of the final image, respectively. If you provide only one of these arguments, the other dimension will be scaled appropriately. If you provide neither, the image will be scaled to 100% of the original (that is, the same size). If you provide both, the image will likely look rather distorted.

  • Scale
  • To be used instead of Width and Height; the value should be a percentage (ie 100 to return the original image without resizing) by which both the width and height will be scaled equally.

AUTHOR & COPYRIGHT

Please see the MT manpage for author, copyright, and license information.

<<

Six Apart
Makers of weblog software and services for individuals, organizations and businesses.