WP_Image_Editor_Imagick::resize( int|null $max_w, int|null $max_h, bool $crop = false )
Resizes current image.
Description
At minimum, either a height or width must be provided.
If one of the two is set to null, the resize will maintain aspect ratio according to the provided dimension.
Parameters
- $max_w
-
(Required) Image width.
- $max_h
-
(Required) Image height.
- $crop
-
(Optional)
Default value: false
Return
(true|WP_Error)
Source
File: wp-includes/class-wp-image-editor-imagick.php
public function resize( $max_w, $max_h, $crop = false ) {
if ( ( $this->size['width'] == $max_w ) && ( $this->size['height'] == $max_h ) )
return true;
$dims = image_resize_dimensions( $this->size['width'], $this->size['height'], $max_w, $max_h, $crop );
if ( ! $dims )
return new WP_Error( 'error_getting_dimensions', __('Could not calculate resized image dimensions') );
list( $dst_x, $dst_y, $src_x, $src_y, $dst_w, $dst_h, $src_w, $src_h ) = $dims;
if ( $crop ) {
return $this->crop( $src_x, $src_y, $src_w, $src_h, $dst_w, $dst_h );
}
// Execute the resize
$thumb_result = $this->thumbnail_image( $dst_w, $dst_h );
if ( is_wp_error( $thumb_result ) ) {
return $thumb_result;
}
return $this->update_size( $dst_w, $dst_h );
}
Changelog
Version | Description |
---|---|
3.5.0 | Introduced. |