Nghe tiêu đề có vẻ như chúng ta sẽ cần một phần mềm tạo ảnh ,để có thể tạo những biểu tượng hay nút bấm trở nên bóng bẩy . Nhưng với GD library có trong PHP, chúng ta hoàn toàn có thể làm được điều này chỉ với vài dòng code đơn giản. Qua bài viết này , các bạn cũng có thể tự tay tạo một ứng dụng nhỏ từ PHP cho website hay blog của mình.
Chúng ta sẽ chuyển đổi ảnh thường trở nên bóng bẩy như sau :
Từ ảnh này
|
|
Trở thành :
|
|
Để bắt đầu, chúng ta sẽ cần một hình ảnh có hiệu ứng overlay như sau :
Các biểu tượng mà mình định làm sẽ có kích thước vào khoảng 100×100, nhưng kích thước của ảnh overlay sẽ có kích thước là 130×130 pixels. Sở dĩ nó to hơn so với kích thước icon là để có thể đặt icon vào nằm bên trong nó.
Sau đây là đoạn php giúp chúng ta chuyển từ ảnh thường sang ảnh bóng bẩy :
<?php
// Load hình ảnh là biểu tượng cần chuyển
$image = imagecreatefrompng("icon.png");
// Load ảnh overlay
$overlayImage = imagecreatefrompng("overlay.png");
//imagealphablending($overlayImage, true);
// Lấy kích thước hình ảnh
$imageWidth=imagesx($image);
$imageHeight=imagesy($image);
$overlayImageWidth=imagesx($overlayImage);
$overlayImageHeight=imagesy($overlayImage);
imagelayereffect($overlayImage, IMG_EFFECT_OVERLAY);
imagecopy(
// ảnh cuối
$overlayImage,
// ảnh nguồn
$image,
// canh giữa
($overlayImageWidth-$imageWidth)/2, ($overlayImageHeight-$imageHeight)/2,
0, 0,
$imageWidth, $imageHeight);
// Ấn định định dạng ảnh sẽ tạo ra
header("Content-type: image/png");
imagePng($overlayImage);
// Giải phóng bộ nhớ
imageDestroy($image);
imageDestroy($overlayImage);
?>
Thế là xong, bây giờ các bạn đã có một ứng dụng chuyển ảnh đơn giản bằng PHP, và mình cũng hy vọng qua bài viết này các bạn sẽ có thêm một kinh nghiệm về lập trình PHP.