php如何使用imagecopyresampled(影像處理函數)?以下這篇文章給大家詳解一下php影像處理函數imagecopyresampled用法。有一定的參考價值,有需要的朋友可以參考一下,希望對大家有幫助。
php映像處理函數imagecopyresampled用法
語法
bool imagecopyresampled ( resource $dst_image , resource $src_image , int $dst_x , int $dst_y , int $src_x , int $src_y , int $dst_w , int $dst_h , int $src_w , int $src_h )
參數:
dst_image | 目標圖象連結資源。 |
src_image | 來源圖象連接資源。 |
dst_x | 目標 X 座標點。 |
dst_y | 目標 Y 座標點。 |
src_x | 來源的 X 座標點。 |
src_y | 來源的 Y 座標點。 |
dst_w | 目標寬度。 |
dst_h | 目標高度。 |
src_w | 來源圖象的寬度。 |
src_h | 來源圖象的高度。 |
成功時傳回 TRUE, 或在失敗時回傳 FALSE。
案例
1、圖片裁減
<?php $targ_w = $targ_h = 150; // 设置目标宽度与高度 $jpeg_quality = 90; // 图片质量90,满分为100 $src = 'demo_files/pool.jpg'; // 被处理的图片 $img_r = imagecreatefromjpeg($src); // 获取原图 $dst_r = ImageCreateTrueColor( $targ_w, $targ_h ); // 获取新图 imagecopyresampled($dst_r,$img_r,0,0,$_POST['x'],$_POST['y'], $targ_w,$targ_h,$_POST['w'],$_POST['h']); // 目标图 源图 目标X坐标点 目标Y坐标点 源的X坐标点 源的Y坐标点 目标宽度 目标高度 源图宽度 源图高度 header('Content-type: image/jpeg'); imagejpeg($dst_r,null,$jpeg_quality); // 输出图象到浏览器或文件 ?>
2、重新取樣
<?php // 源文件 $filename = '1.jpg'; // 设置最大宽高 $width = 400; $height = 400; // Content type header('Content-Type: image/jpeg'); // 获取新尺寸 list($width_orig, $height_orig) = getimagesize($filename); $ratio_orig = $width_orig/$height_orig; if ($width/$height > $ratio_orig) { $width = $height*$ratio_orig; } else { $height = $width/$ratio_orig; } // 重新取样 $image_p = imagecreatetruecolor($width, $height); $image = imagecreatefromjpeg($filename); imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig); // 输出 imagejpeg($image_p, null, 100); ?>
附上上傳圖片的三種想法
選擇圖片,提交表單,伺服器統一處理上傳,儲存路徑
選擇圖片,上傳,取得路徑,提交表單,儲存路徑
選擇圖片,上傳到伺服器,透過某種途徑取得到伺服器的圖片,儲存到本機
更多相關知識,請關注 PHP中文網! !
以上是php如何使用imagecopyresampled(影像處理函數)?的詳細內容。更多資訊請關注PHP中文網其他相關文章!