案例介紹
在PHP中,您希望編寫一些程式碼,以便透過表單上傳的任何圖像自動調整為147x147px。您希望透過對影像進行縮放來減少檔案大小。
程式碼實作
為了完成此任務,您可以使用PHP的ImageMagick或GD函數來處理影像。
使用GD,可以實現以下功能:
function resize_image($file, $w, $h, $crop=FALSE) { list($width, $height) = getimagesize($file); $r = $width / $height; if ($crop) { if ($width > $height) { $width = ceil($width-($width*abs($r-$w/$h))); } else { $height = ceil($height-($height*abs($r-$w/$h))); } $newwidth = $w; $newheight = $h; } else { if ($w/$h > $r) { $newwidth = $h*$r; $newheight = $h; } else { $newheight = $w/$r; $newwidth = $w; } } $src = imagecreatefromjpeg($file); $dst = imagecreatetruecolor($newwidth, $newheight); imagecopyresampled($dst, $src, 0, 0, 0, 0, $newwidth, $newheight, $width, $height); return $dst; }
您可以呼叫此函數,如下所示:
$img = resize_image(‘/path/to/some/image.jpg’, 200, 200);
根據經驗,GD的圖像重採樣確實可以顯著減小檔案大小,尤其是在重新取樣原始數位相機影像時。
以上是如何使用 GD 在 PHP 中將上傳的圖片大小調整為 147x147px?的詳細內容。更多資訊請關注PHP中文網其他相關文章!