Resize Image Đơn Giản Trong PHP

Nếu bạn thường xuyên lập trình website hoặc các ứng dụng bằng php chắc hẳn bạn phải làm việc nhiều với ảnh, ví dụ như tạo làm ảnh sản phẩm, hoặc ảnh cho tin bài… Hay đơn thuẩn chỉ là  tạo ảnh có kích thước phù hợp với site, làm giảm dung lượng của ảnh để giảm bớt băng thông cũng như tăng tốc độ của site. Php cung cấp một số thư viện (class) để hỗ trợ các công việc xử lí ảnh. Ở đây mình sử dụng một thư viện ảnh đơn giản chứa trong file SimpleImage.php để phục vụ các ví dụ test về resize image trong php:

Nội dung của file SimpleImage.php

 

Chúng ta sẽ thử test các ví dụ khi sử dụng class SimpleImage.php.

Ví dụ 1:

Chúng ta sẽ resize ảnh picture.jpg thành kích thước 250×400 sau đó lưu thành file picture2.jpg

Code PHP:

 

Chúng ta đưa phần code PHP vào 1 trang vidu1.php  đồng thời show 2 bức ảnh để dễ so sánh.    Bức ảnh thứ nhất là ảnh gốc với size là 1920×1080 dung lượng 1029KB.

 

 

Kết quả khi ta chạy file vidu1.php
1
Giờ mình sẽ thử cho thêm 2 thuộc tính < height=”250” width=”400″ > vào thẻ show ảnh gốc để đưa cả 2 ảnh về cùng kích cỡ và kết quả:
1-1
Và trong thư mục image có thêm một file picture2.jpg với dung lượng là 22KB so với 1029KB của ảnh gốc.

Ví dụ 2:

Resize theo chiều rộng và vẫn giữ đc tỷ lệ giữa chiều rộng và chiêu cao. Ví dụ này sẽ resize chiều rộng file ảnh picture.jpg thành 250 và lưu ra file picture3.jpg

PHP Code:

 

Chúng ta sẽ test tương tự như ví dụ 1 với một file vidu2.php và kết quả:
2
Và trong thư mục image có thêm một file picture3.jpg với dung lượng 9KB

Ví dụ 3:

Resize theo tỷ lệ  file ảnh giảm xuống còn 1 nửa (50%) và lưu ra file picture4.jpg

PHP Code:

 

Chúng ta test tương tự 2 ví dụ trước lần này là bằng file vidu3.php và kết quả:
3
Cùng với 1 file picture4.php có dung lượng 104KB.

Còn một số ví dụ các bạn có thể tự test.

Ví du 4:

Resize từ 1 file sau đó xuất ra nhiều file khác nhau. Ví dụ sau sẽ resize file picture.jpg thành file picture5.jpg  có chiều cao 500 và có chiều cao 200px lưu thành file picture6.jpg

PHP Code:

Ví dụ 5:

Ví dụ cho phép upload 1 ảnh thông qua form rồi resize ảnh thành có chiều rộng 250px rồi xuất ra trình duyệt.

PHP code:

 

Lưu ý: Trong tt c các ví d trên bn có th áp dng cho các nh có đnh dng .png và .gif ch không riêng đnh dng jpeg.

Các bạn có thể download phần demo của mình tại đây

Trên đây là một số ví dụ đơn giản về resize ảnh trong PHP dựa vào một class đơn giản. Trong bài viết tiếp theo mình sẽ hướng dẫn các bạn về resize ảnh dựa vào một thư viện khác. Cảm ơn các bạn đã theo dõi. Hẹn gặp lại.

You may also like...

2 Responses

  1. Bảo Trần says:

    Nếu có Demo xem, hoặc file dowload thì tốt nhĩ, xem trực quan hơn.!

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">