Hàm imagecrop() trong PHP có nhiệm vụ cắt một ảnh theo tỷ lệ nhất định.
imagecrop ( resource $image , array $rect ) : resource
Hàm này trả về đường dẫn của file được Crop nếu thành công và trả về FALSE nếu thất bại.
<?php $im = imagecreatefromjpeg('example.jpg'); $size = min(imagesx($im), imagesy($im)); $im2 = imagecrop($im, ['x' => 0, 'y' => 0, 'width' => $size, 'height' => $size]); if ($im2 !== FALSE) { imagepng($im2, 'example-cropped.png'); imagedestroy($im2); } imagedestroy($im); ?>
Ảnh ban đầu
Ảnh sau khi được Crop
<?php $new = imagecreatefromjpeg('example.jpg'); function cropImage($src) { $crop_width = imagesx($src); $crop_height = imagesy($src); $size = min($crop_width, $crop_height); if($crop_width >= $crop_height) { $newx= ($crop_width-$crop_height)/2; $im2 = imagecrop($src, ['x' => $newx, 'y' => 0, 'width' => $size, 'height' => $size]); } else { $newy= ($crop_height-$crop_width)/2; $im2 = imagecrop($src, ['x' => 0, 'y' => $newy, 'width' => $size, 'height' => $size]); } return imagejpeg($im2,'example_crop.jpg',90); } cropImage($new); ?>
Ảnh trước khi Crop
Ảnh sau khi Crop
Trong ví dụ trên bạn có thể sử dụng để crop lấy trung tâm của ảnh gốc.
Hi vọng với bài viết này, bạn đã hiểu rõ cách sử dụng hàm imagecrop() trong PHP. Nếu thấy bài viết hay và ý nghĩa, hãy like và chia sẻ với bạn bè để mọi người cùng nhau học tập nhé. Cảm ơn bạn đã ghé thăm codetutam.com
Bình luận: