imagescale

(PHP 5 >= 5.5.0)

imagescaleScale an image using the given new width and height

说明

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

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

参数

image

由图象创建函数(例如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).

返回值

Return the scaled image resource on success 或者在失败时返回 FALSE.

更新日志

版本 说明
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.

add a note add a note

User Contributed Notes 2 notes

up
1
Anonymous
1 month ago
imageScale has got troubles with scaling images...
It can output Segmentation Fault when you want to provide custom $mode argument.
How to scale image with interpolation in php gd?
Use imagecopyresampled() instead of imagescale().
up
-37
abc at ed48.com
1 year ago
<img src="image.jpg" alt="image" /><br><br>
<?php
$org_info
= getimagesize("image.jpg");
echo
$org_info[3] . '<br><br>';
$rsr_org = imagecreatefromjpeg("image.jpg");
$rsr_scl = imagescale($rsr_org, 860, 860IMG_BICUBIC_FIXED);
imagejpeg($rsr_scl, "imagebfb.jpg");
imagedestroy($rsr_org);
imagedestroy($rsr_scl);
?>
<img src="imagebfb.jpg" alt="imagebfb" /><br><br>
<?php
$scl_info
= getimagesize("imagebfb.jpg");
echo
$scl_info[3];
?>
To Top