Heim > php教程 > php手册 > PHP图像操作:3D图、缩放、旋转、裁剪、添加水印(三)

PHP图像操作:3D图、缩放、旋转、裁剪、添加水印(三)

WBOY
Freigeben: 2016-06-13 09:24:24
Original
1302 Leute haben es durchsucht

PHP图像操作:3D图、缩放、旋转、裁剪、添加水印(三)

来源:http://www.ido321.com/887.html

5、PHP对图像的旋转

   1: <p>
Nach dem Login kopieren
   2:     <h4>旋转之前</h4>
Nach dem Login kopieren
   3:     
Nach dem Login kopieren
   4: </p>
Nach dem Login kopieren
   5: <?php
Nach dem Login kopieren
   6: header("content-type","text/html;charset=utf-8");
Nach dem Login kopieren
   7:  
Nach dem Login kopieren
   8: /*
Nach dem Login kopieren
   9: *图片沿y轴旋转,以png&#26684;式为例
Nach dem Login kopieren
  10: *@param string $filename 图片的url
Nach dem Login kopieren
  11: */
Nach dem Login kopieren
  12: function turn_y($filename)
Nach dem Login kopieren
  13: {
Nach dem Login kopieren
  14:     /*创建图片资源*/
Nach dem Login kopieren
  15:     $backy = imagecreatefrompng($filename);
Nach dem Login kopieren
  16:  
Nach dem Login kopieren
  17:     /*获取大小*/
Nach dem Login kopieren
  18:     $widthy = imagesx($backy);
Nach dem Login kopieren
  19:     $heighty = imagesy($backy);
Nach dem Login kopieren
  20:  
Nach dem Login kopieren
  21:     /*创建新的图片资源,保存翻转后的图片*/
Nach dem Login kopieren
  22:     $newy = imagecreatetruecolor($widthy, $heighty);
Nach dem Login kopieren
  23:  
Nach dem Login kopieren
  24:     /*沿着y轴翻转,就是将原图从右向左按一个像素宽度向新资源中逐个复制*/
Nach dem Login kopieren
  25:     for ($i=0; $i < $widthy; $i&#43;&#43;) { 
Nach dem Login kopieren
  26:         imagecopy($newy,$backy,$widthy-$i-1,0,$i,0,1,$heighty);
Nach dem Login kopieren
  27:     }
Nach dem Login kopieren
  28:  
Nach dem Login kopieren
  29:     /*保存翻转后的图片*/
Nach dem Login kopieren
  30:     imagepng($newy,'http://www.bkjia.com/uploads/allimg/141009/0425435558-1.png');
Nach dem Login kopieren
  31:  
Nach dem Login kopieren
  32:     /*释放资源*/
Nach dem Login kopieren
  33:     imagedestroy($backy);
Nach dem Login kopieren
  34:     imagedestroy($newy);
Nach dem Login kopieren
  35: }
Nach dem Login kopieren
  36:  
Nach dem Login kopieren
  37: /*
Nach dem Login kopieren
  38: *图片沿x轴旋转,以png&#26684;式为例
Nach dem Login kopieren
  39: *@param string $filename 图片的url
Nach dem Login kopieren
  40: */
Nach dem Login kopieren
  41: function turn_x($filename)
Nach dem Login kopieren
  42: {
Nach dem Login kopieren
  43:     /*创建图片资源*/
Nach dem Login kopieren
  44:     $backx = imagecreatefrompng($filename);
Nach dem Login kopieren
  45:  
Nach dem Login kopieren
  46:     /*获取大小*/
Nach dem Login kopieren
  47:     $widthx = imagesx($backx);
Nach dem Login kopieren
  48:     $heightx = imagesy($backx);
Nach dem Login kopieren
  49:  
Nach dem Login kopieren
  50:     /*创建新的图片资源,保存翻转后的图片*/
Nach dem Login kopieren
  51:     $newx = imagecreatetruecolor($widthx, $heightx);
Nach dem Login kopieren
  52:  
Nach dem Login kopieren
  53:     /*沿着x轴翻转,就是将原图从上到下按一个像素宽度向新资源中逐个复制*/
Nach dem Login kopieren
  54:     for ($i=0; $i < $heightx; $i&#43;&#43;) { 
Nach dem Login kopieren
  55:         imagecopy($newx,$backx,0,$heightx-$i-1,0,$i,$widthx,1);
Nach dem Login kopieren
  56:     }
Nach dem Login kopieren
  57:  
Nach dem Login kopieren
  58:     /*保存翻转后的图片*/
Nach dem Login kopieren
  59:     imagepng($newx,'http://www.bkjia.com/uploads/allimg/141009/0425432228-2.png');
Nach dem Login kopieren
  60:  
Nach dem Login kopieren
  61:     /*释放资源*/
Nach dem Login kopieren
  62:     imagedestroy($backx);
Nach dem Login kopieren
  63:     imagedestroy($newx);
Nach dem Login kopieren
  64: }
Nach dem Login kopieren
  65: /*调用函数*/
Nach dem Login kopieren
  66: turn_y('http://www.bkjia.com/uploads/allimg/141009/0425435O8-0.png');
Nach dem Login kopieren
  67: turn_x('http://www.bkjia.com/uploads/allimg/141009/0425435O8-0.png');
Nach dem Login kopieren
  68: ?>
Nach dem Login kopieren
  69: <p style="float:left">
Nach dem Login kopieren
  70:     <h4>沿着y轴旋转</h4>
Nach dem Login kopieren
  71:     
Nach dem Login kopieren
  72: </p>
Nach dem Login kopieren
  73: <p style="float:left">
Nach dem Login kopieren
  74:     <h4>沿着x轴旋转</h4>
Nach dem Login kopieren
  75:     
Nach dem Login kopieren
  76: </p>
Nach dem Login kopieren

效果


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage