imagecopyresampled()
是 PHP 中用于復制并調整圖像大小的函數
src_image
: 源圖像的路徑。這應該是一個有效的圖像文件,如 JPEG、PNG 或 GIF。dst_image
: 目標圖像的路徑。這也是一個有效的圖像文件,但它可以是與源圖像相同或不同的格式。src_x
: 源圖像中要復制的部分的 x 坐標。src_y
: 源圖像中要復制的部分的 y 坐標。dst_x
: 目標圖像中復制內容的位置的 x 坐標。dst_y
: 目標圖像中復制內容的位置的 y 坐標。src_width
: 源圖像中要復制的部分的寬度。src_height
: 源圖像中要復制的部分的高度。dst_width
: 目標圖像中復制內容的目標寬度。dst_height
: 目標圖像中復制內容的目標高度。以下是一個使用 imagecopyresampled()
的示例:
<?php
// 加載源圖像和目標圖像
$source = imagecreatefromjpeg('source.jpg');
$destination = imagecreatetruecolor(300, 300);
// 設置目標圖像的背景顏色
$backgroundColor = imagecolorallocate($destination, 255, 255, 255);
imagefill($destination, 0, 0, $backgroundColor);
// 使用 imagecopyresampled() 函數復制并調整源圖像的大小
imagecopyresampled($destination, $source, 0, 0, 0, 0, 300, 300, imagesx($source), imagesy($source));
// 保存調整大小后的目標圖像
imagejpeg($destination, 'resized_image.jpg');
// 銷毀圖像資源
imagedestroy($source);
imagedestroy($destination);
?>
在這個示例中,我們從名為 “source.jpg” 的文件加載源圖像,然后創建一個 300x300 像素的目標圖像。我們使用 imagecolorallocate()
為目標圖像分配背景顏色,并使用 imagefill()
將背景填充為白色。接下來,我們使用 imagecopyresampled()
將源圖像復制到目標圖像的中心位置,并將其大小調整為 300x300 像素。最后,我們將調整大小后的目標圖像保存為 “resized_image.jpg”,并銷毀圖像資源。