Heim  >  Artikel  >  Backend-Entwicklung  >  PHP实现图片裁剪、添加水印效果代码_php实例

PHP实现图片裁剪、添加水印效果代码_php实例

WBOY
WBOYOriginal
2016-06-07 17:16:13737Durchsuche

3、PHP对图像的裁剪

 <div>
    <h4>裁剪之前</h4>
    <img  src="1.png"   style="max-width:90%" alt="PHP实现图片裁剪、添加水印效果代码_php实例" >
  </div>
  <&#63;php
  header("content-type","text/html;charset=utf-8");
   
  /*
  *图片裁剪
  *@param string $filename  图片的url
  *@param int  $width   图片裁剪宽度
  *@param int  $height   图片裁剪高度
  *@param int  $x     裁剪图片左边开始的位置
  *@param int  $y     裁剪图片顶边开始的位置
  */
  function cut($filename,$x,$y,$width,$height)
  {
    /*获取图像资源,需要裁剪的图片*/
    $image = imagecreatefrompng($filename);
  
    /*以新的大小创建画布,保存裁剪后的图片*/
    $image_p = imagecreatetruecolor($width, $height);
  
    /*使用imagecopyresampled缩放*/
    imagecopyresampled($image_p, $image, 0, 0, $x, $y, $width, $height, $width, $height);
  
    /*保存裁剪后的图片和命名*/
    imagepng($image_p,'test1.png');
  
    /*释放资源*/
    imagedestroy($image_p);
    imagedestroy($image);
  }
  /*调用函数*/
  cut('1.png',20,20,80,80);      
  &#63;>
  <div>
    <h4>裁剪之后</h4>
    <img  src="test1.png"   style="max-width:90%" alt="PHP实现图片裁剪、添加水印效果代码_php实例" >
  </div>

效果

4、PHP为图像添加水印

 <div>
    <h4>没有水印</h4>
    <img  src="1.png"   style="max-width:90%" alt="PHP实现图片裁剪、添加水印效果代码_php实例" >
  </div>
  <&#63;php
  header("content-type","text/html;charset=utf-8");
   
  /*
  *给背景图片添加水印,背景图片格式png,水印格式gif
  *@param string $filename  图片的url
  *@param string $water   水印图片
  */
  function watermark($filename,$water)
  {
    /*获取原图的大小*/
    list($b_w,$b_h) = getimagesize($filename);
  
    /*获取水印图片的大小*/
    list($w_w,$w_h) = getimagesize($water);
  
    /*在背景图片中放水印图片的随机起始位置*/
    $posX =rand(0,($b_w - $w_w));
    $posY =rand(0,($b_h - $w_h));
  
    /*获取图像资源,需要裁剪的图片*/
    $back = imagecreatefrompng($filename);
    $water = imagecreatefromgif($water);
  
    /*使用Inagecopy函数复制水印图片到指定位置*/
    imagecopy($back, $water, $posX, $posY, 0, 0, $w_w, $w_h);
  
    /*保存带水印的图片和命名*/
    imagepng($back,'test2.png');
  
    /*释放资源*/
    imagedestroy($back);
    imagedestroy($water);
  }
  /*调用函数*/
  watermark('1.png','test.gif');      
  &#63;>
  <div>
    <h4>加上水印</h4>
    <img  src="test2.png"   style="max-width:90%" alt="PHP实现图片裁剪、添加水印效果代码_php实例" >
  </div>

效果

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn