GraphicsMagick

- Home
- Project
- Download
- Install
- Source
- News
- Utilities
- Programming
- Reference

# resize

## Resize an image

Contents

- MagnifyImage
- MinifyImage
- ResizeImage
- SampleImage
- ScaleImage
- ThumbnailImage

# MagnifyImage

## Synopsis

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

## Description

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

## Synopsis

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

## Description

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

## Synopsis

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

## Description

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 );

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

## Synopsis

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

## Description

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. SampleImage() is extremely fast and may be used where speed is most important.

The format of the SampleImage method is:

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

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

## Synopsis

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

## Description

ScaleImage() changes the size of an image to the specified dimensions. This method is reasonably fast but it is not currently multi-threaded and does not support image filters. The quality of the resized image is sufficient for most purposes.

The format of the ScaleImage method is:

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

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.

# ThumbnailImage

## Synopsis

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

## Description

ThumbnailImage() changes the size of an image to the given dimensions. This method was designed as a low cost thumbnail generator. ThumbnailImage() is typically very fast but an attempt is made to improve quality by first using a simple sampling algorithm for part of the reduction, and then a filtering algorithm to produce the final image.

The format of the ThumbnailImage method is:

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

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.

Copyright © GraphicsMagick Group 2002 - 2021