imagescale

Scale an image using the given new width and height

&reftitle.description; ``GdImage``false```imagescale` `GdImage` `image` `int` `width` `int` `height`-1 `int` `mode` `IMG_BILINEAR_FIXED`

`imagescale` scales an image using the given interpolation algorithm.

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

&reftitle.parameters;
&gd.image.description;

`width`

- The width to scale the image to.

`height`

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

`mode`

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

  `IMG_WEIGHTED4` is not yet supported.

&reftitle.returnvalues;

Return the scaled image object on success&return.falseforfailure;.

&reftitle.errors;

Throws a `ValueError` if `width` or `height` would cause over-/underflow.

Throws a `ValueError` if `mode` is invalid.

&reftitle.changelog;

&Version; | &Description;
8.4.0 | Now throws a `ValueError` if `width` or `height` would cause over-/underflow.
8.4.0 | Now throws a `ValueError` if `mode` is invalid.
8.0.0 | On success, this function returns a `GDImage` instance now; previously, a `resource` was returned.
&gd.changelog.image-param;

&reftitle.seealso;

- `imagecopyresized`
- `imagecopyresampled`