# imagescale

(PHP 5 >= 5.5.0, PHP 7)

imagescale — Scale an image using the given new width and height

### Description

imagescale ( resource `$image` , int `$new_width` [, int `$new_height` = -1 [, int `$mode` = IMG_BILINEAR_FIXED ]] ) : resource

imagescale() scales an image using the given interpolation algorithm.

> Note:

> Unlike many of other image functions, imagescale() does not modify the passed `image`; instead, a new image is returned.

### Parameters

`image`

  An image resource, returned by one of the image creation functions, such as imagecreatetruecolor().

`new_width`

  The width to scale the image to.

`new_height`

  The height to scale the image to. If omitted or negative, the aspect ratio will be preserved.

  Caution

  You should always provide the height if using PHP 5.5.18 or earlier, or PHP 5.6.2 or earlier, as the aspect ratio calculation was incorrect.

`mode`

  One of `IMG_NEAREST_NEIGHBOUR`, `IMG_BILINEAR_FIXED`, `IMG_BICUBIC`, `IMG_BICUBIC_FIXED` or anything else (will use two pass).

  > Note: `IMG_WEIGHTED4` is not yet supported.

### Return Values

Return the scaled image resource on success or `FALSE` on failure.

### Changelog

Version | Description
--- | ---
5.5.19/5.6.3 | The calculation of the height if `new_height` was negative or omitted was fixed; prior to these versions, the aspect ratio was not maintained correctly.

### See Also

imagecopyresized() - Copy and resize part of an image imagecopyresampled() - Copy and resize part of an image with resampling