You are viewing the documentation for Intervention Image 2, this version has reached EOL. Please consider upgrading to version 3.

public Intervention\Image\Image resize (integer $width, integer $height, Closure $callback)

Resizes current image based on given width and/or height. To constraint the resize command, pass an optional Closure callback as third parameter.



The new width of the image


The new height of the image

callback (optional)

Closure callback defining constraints on the resize. It's possible to constraint the aspect-ratio and/or a unwanted upsizing of the image. See examples below.

public Intervention\Image\Size aspectRatio()

Constraint the current aspect-ratio of the image. As a shortcut to proportional resizing you can use widen() or heighten().

public Intervention\Image\Size upsize()

Keep image from being upsized.

Return Values

Instance of Intervention\Image\Image


// create instance
$img = Image::make('public/foo.jpg');

// resize image to fixed size
$img->resize(300, 200);

// resize only the width of the image
$img->resize(300, null);

// resize only the height of the image
$img->resize(null, 200);

// resize the image to a width of 300 and constrain aspect ratio (auto height)
$img->resize(300, null, function ($constraint) {

// resize the image to a height of 200 and constrain aspect ratio (auto width)
$img->resize(null, 200, function ($constraint) {

// prevent possible upsizing
$img->resize(null, 400, function ($constraint) {

// resize the image so that the largest side fits within the limit; the smaller
// side will be scaled to maintain the original aspect ratio
$img->resize(400, 400, function ($constraint) {

See also