PHP給圖片添加水印


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

  ?>

 1 <?php
 2 //這里僅僅是為了案例需要准備一些素材圖片
 3 $url = 'http://www.iyi8.com/uploadfile/2014/0521/20140521105216901.jpg';
 4 $content = file_get_contents($url);
 5 $filename = 'tmp.jpg';
 6 file_put_contents($filename, $content);
 7 $url = 'http://wiki.ubuntu.org.cn/images/3/3b/Qref_Edubuntu_Logo.png';
 8 file_put_contents('logo.png', file_get_contents($url));
 9 //開始添加水印操作
10 $im = imagecreatefromjpeg($filename);
11 $logo = imagecreatefrompng('logo.png');
12 $size = getimagesize('logo.png');
13 imagecopy($im, $logo, 600, 150, 0, 00, $size[0], $size[1]);
14 
15 header("content-type: image/jpeg");
16 imagejpeg($im);
17 ?>

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