0
//Get current dimensions
$width = imagesx($myimage);
$height = imagesy($myimage);

$width = $width * ($zoom/100);
$height = $height * ($zoom/100);

$scale = min($new_width/$width, $new_height/$height);

$new_width = ceil($scale * $width);
$new_height = ceil($scale * $height);




    imagecopyresampled($image_p, $myimage, 0, 0, $offset_x * -1, $offset_y * -1, $new_width, $new_height, $width, $height);

写真をズームしようとしていますが、実際には小さくなり、まったくズームされません。ズームは 113/100 = 1.13 のような係数で、13% ズームインする必要があります。

4

1 に答える 1

1

私はあなたが望むものだと思います:

//Get current dimensions
$width = imagesx($myimage);
$height = imagesy($myimage);

$new_width = $width * $zoom / 100; //120 zoom will increase the image by 20%
$new_height = $height * $zoom / 100;

imagecopyresampled($image_p, $myimage, 0, 0, 0, 0, $new_width, $new_height, $width, $height);

実際、php.net の最初の例はズームの例です: http://php.net/manual/en/function.imagecopyresampled.php

于 2013-08-16T13:22:46.570 に答える