PHP 拷貝圖像 imagecopy 與 imagecopyresized 函數


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);
?>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM