Как я могу обрезать изображение в php с заданными координатами X, Y, ширины и высоты

Я пытаюсь обрезать исходное изображение с заданными координатами X, Y, Width и Height.
Но это не обрезает изображение должным образом.

Вот мой код

    header('Content-type: image/jpeg');
$source_x = $_POST['x'];
$source_y = $_POST['y'];
$width = $_POST['w'];
$height = $_POST['h'];

$dest = imagecreatetruecolor($width, $height);

$src = imagecreatefromjpeg('path of the orignal Image');

imagecopy($dest, $src, 30, 30, $source_x, $source_y, $width, $height);

$cropped_image = "Path where to store the cropped image";

imagejpeg($dest, $cropped_image, 100);

Используя приведенный выше код, я могу обрезать изображение, но оно не обрезается по заданной координате.

Любая помощь будет полезна.

6

Решение

Вы должны использовать imagecrop PHP функция
Вот ссылка на руководство: imagecrop

Итак, в вашем случае это будет выглядеть так:

$to_crop_array = array('x' =>$source_x , 'y' => $source_y, 'width' => $width, 'height'=> $height);
$dest = imagecrop($src, $to_crop_array);
1

Другие решения

Других решений пока нет …