首頁 >後端開發 >php教程 >如何使用 PHP 內建函數處理圖片?

如何使用 PHP 內建函數處理圖片?

WBOY
WBOY原創
2024-04-22 12:15:02628瀏覽

PHP 內建函數提供了便利的影像處理功能,可實現影像縮放、裁剪、新增浮水印等操作。使用 imagecopyresampled() 可縮放影像,imagecrop() 可裁切影像,而 imagecopymerge() 用於新增浮水印。

如何使用 PHP 内置函数处理图像?

如何使用 PHP 內建函數處理映像

PHP 提供了豐富的內建函數,用於映像處理,方便快速地操作映像。本文將介紹如何使用這些函數對影像進行常見操作,包括縮放、裁剪、添加浮水印等。以下內容包括實際案例代碼。

縮放圖像

imagecopyresampled() 函數可以縮放圖像:

<?php
$src_image = 'image.jpg';
$dst_image = 'image-scaled.jpg';
$scaled_width = 300;
$scaled_height = 200;

$src = imagecreatefromjpeg($src_image);
$dst = imagecreatetruecolor($scaled_width, $scaled_height);
imagecopyresampled($dst, $src, 0, 0, 0, 0, $scaled_width, $scaled_height, imagesx($src), imagesy($src));
imagejpeg($dst, $dst_image);
?>

裁剪圖像

imagecrop() 函數可以裁切影像:

<?php
$src_image = 'image.jpg';
$dst_image = 'image-cropped.jpg';
$crop_x = 100;
$crop_y = 200;
$crop_width = 300;
$crop_height = 200;

$src = imagecreatefromjpeg($src_image);
$dst = imagecrop($src, ['x' => $crop_x, 'y' => $crop_y, 'width' => $crop_width, 'height' => $crop_height]);
imagejpeg($dst, $dst_image);
?>

新增浮水印

imagecopymerge() 函數可以添加浮水印:

<?php
$main_image = 'image.jpg';
$watermark_image = 'watermark.png';
$output_image = 'image-with-watermark.jpg';
$margin = 50;

$main = imagecreatefromjpeg($main_image);
$watermark = imagecreatefrompng($watermark_image);

$watermark_width = imagesx($watermark);
$watermark_height = imagesy($watermark);

$dst_x = imagesx($main) - $margin - $watermark_width;
$dst_y = imagesy($main) - $margin - $watermark_height;

imagecopymerge($main, $watermark, $dst_x, $dst_y, 0, 0, $watermark_width, $watermark_height, 75);
imagejpeg($main, $output_image);
?>

以上是如何使用 PHP 內建函數處理圖片?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn