Hàm imagecrop() trong PHP là gì ?

12/08/2020 - lượt xem
Chia sẻ
 
Rate this post

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

Tham số truyền vào 

  • $image là nguồn của ảnh, hoặc được tạo từ hàm imagecreatetruecolor().
  • $rect là kích thước cắt ảnh theo toạ độ x,y và width,height.

 

Giá trị trả về

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.

Ví dụ minh họa

<?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

Ứng dụng

<?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.

Các hàm liên quan

  • imagecreatetruecolor() hàm tạo một khung ảnh với 2 tham số width,height.
  • imagecolorallocate() hàm xác định giá trị màu sắc theo chuẩn màu rgb.
  • imagestring() hàm tạo text vào ảnh.
  • imagecropauto() hàm crop ảnh theo chế độ có sẵn.

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

    Liên hệ với chúng tôi

    Để lại thông tin để nhận được các bài viết khác

    Rate this post

    Xem thêm nhiều bài tin mới nhất về Kiến thức

    Xem thêm