PHP 拷貝圖像 imagecopy 與 imagecopyresized 函數 imagecopy() 函數用於拷貝圖像或圖像的一部分。 imagecopyresized() 函數用於拷貝部分圖像並調整大小。 imagecopy() imagecopy() 函數用於拷貝圖像或圖像的一部分,成功返回 TRUE ,否則返回 FALSE 。 語法: bool imagecopy( resource dst_im, resource src_im, int dst_x, int dst_y, int src_x, int src_y, int src_w, int src_h ) 參數說明: 參數 說明 dst_im 目標圖像 src_im 被拷貝的源圖像 dst_x 目標圖像開始 x 坐標 dst_y 目標圖像開始 y 坐標,x,y同為 0 則從左上角開始 src_x 拷貝圖像開始 x 坐標 src_y 拷貝圖像開始 y 坐標,x,y同為 0 則從左上角開始拷貝 src_w (從 src_x 開始)拷貝的寬度 src_h (從 src_y 開始)拷貝的高度 例子: <?php header("Content-type: image/jpeg"); //創建目標圖像 $dst_im = imagecreatetruecolor(150, 150); //源圖像 $src_im = @imagecreatefromjpeg("images/flower_1.jpg"); //拷貝源圖像左上角起始 150px 150px imagecopy( $dst_im, $src_im, 0, 0, 0, 0, 150, 150 ); //輸出拷貝后圖像 imagejpeg($dst_im); imagedestroy($dst_im); imagedestroy($src_im); ?> imagecopyresized() imagecopyresized() 函數用於拷貝圖像或圖像的一部分並調整大小,成功返回 TRUE ,否則返回 FALSE 。 語法: bool imagecopyresized( resource dst_im, resource src_im, int dst_x, int dst_y, int src_x, int src_y, int dst_w, int dst_h, int src_w, int src_h ) 本函數參數可參看 imagecopy() 函數,只是本函數增加了兩個參數(注意順序): dst_w:目標圖像的寬度。 dst_h:目標圖像的高度。 imagecopyresized() 的典型應用就是生成圖片的縮略圖: <?php header("Content-type: image/jpeg"); //原圖文件 $file = "images/flower_1.jpg"; // 縮略圖比例 $percent = 0.5; // 縮略圖尺寸 list($width, $height) = getimagesize($file); $newwidth = $width * $percent; $newheight = $height * $percent; // 加載圖像 $src_im = @imagecreatefromjpeg($file); $dst_im = imagecreatetruecolor($newwidth, $newheight); // 調整大小 imagecopyresized($dst_im, $src_im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height); //輸出縮小后的圖像 imagejpeg($dst_im); imagedestroy($dst_im); imagedestroy($src_im); ?>