NAME

zoom - Methods to Resize an Image


SYNOPSIS

Image * MagnifyImage( const Image *image, ExceptionInfo *exception );

Image * MinifyImage( const Image *image, ExceptionInfo *exception );

Image * ResizeImage( Image *image, const unsigned long columns, const unsigned long rows, const FilterTypes filter, const double blur, ExceptionInfo *exception );

Image * SampleImage( const Image *image, const unsigned long columns, const unsigned long rows, ExceptionInfo *exception );

Image * ScaleImage( const Image *image, const unsigned long columns, const unsigned long rows, ExceptionInfo *exception );


FUNCTION DESCRIPTIONS

MagnifyImage

MagnifyImage() is a convenience method that scales an image proportionally to twice its size.

The format of the MagnifyImage method is:

Image *MagnifyImage ( const Image *image, ExceptionInfo *exception );

A description of each parameter follows:

image:
The image.

exception:
Return any errors or warnings in this structure.

MinifyImage

MinifyImage() is a convenience method that scales an image proportionally to half its size.

The format of the MinifyImage method is:

Image *MinifyImage ( const Image *image, ExceptionInfo *exception );

A description of each parameter follows:

image:
The image.

exception:
Return any errors or warnings in this structure.

ResizeImage

ResizeImage() scales an image to the desired dimensions with one of these filters:
  Bessel   Blackman   Box
  Catrom   Cubic      Gaussian
  Hanning  Hermite    Lanczos
  Mitchell Point      Quandratic
  Sinc     Triangle

Most of the filters are FIR (finite impulse response), however, Bessel, Gaussian, and Sinc are IIR (infinite impulse response). Bessel and Sinc are windowed (brought down to zero) with the Blackman filter.

ResizeImage() was inspired by Paul Heckbert's zoom program.

The format of the ResizeImage method is:

Image *ResizeImage ( Image *image, const unsigned long columns, const unsigned long rows, const FilterTypes filter, const double blur, ExceptionInfo *exception );

A description of each parameter follows:

image:
The image.

columns:
The number of columns in the scaled image.

rows:
The number of rows in the scaled image.

filter:
Image filter to use.

blur:
The blur factor where > 1 is blurry, < 1 is sharp.

exception:
Return any errors or warnings in this structure.

SampleImage

SampleImage() scales an image to the desired dimensions with pixel sampling. Unlike other scaling methods, this method does not introduce any additional color into the scaled image.

The format of the SampleImage method is:

Image *SampleImage ( const Image *image, const unsigned long columns, const unsigned long rows, ExceptionInfo *exception );

A description of each parameter follows:

image:
The image.

columns:
The number of columns in the sampled image.

rows:
The number of rows in the sampled image.

exception:
Return any errors or warnings in this structure.

ScaleImage

ScaleImage() changes the size of an image to the given dimensions.

The format of the ScaleImage method is:

Image *ScaleImage ( const Image *image, const unsigned long columns, const unsigned long rows, ExceptionInfo *exception );

A description of each parameter follows:

image:
The image.

columns:
The number of columns in the scaled image.

rows:
The number of rows in the scaled image.

exception:
Return any errors or warnings in this structure.