PHP实现图片旋转效果实例代码
PHP对图像的旋转
<div> <h4>旋转之前</h4> <imgsrc="1.png"style="border:1pxsolidred;"> </div> <?php header("content-type","text/html;charset=utf-8"); /* *图片沿y轴旋转,以png格式为例 *@paramstring$filename图片的url */ functionturn_y($filename) { /*创建图片资源*/ $backy=imagecreatefrompng($filename); /*获取大小*/ $widthy=imagesx($backy); $heighty=imagesy($backy); /*创建新的图片资源,保存翻转后的图片*/ $newy=imagecreatetruecolor($widthy,$heighty); /*沿着y轴翻转,就是将原图从右向左按一个像素宽度向新资源中逐个复制*/ for($i=0;$i<$widthy;$i++){ imagecopy($newy,$backy,$widthy-$i-1,0,$i,0,1,$heighty); } /*保存翻转后的图片*/ imagepng($newy,'test3.png'); /*释放资源*/ imagedestroy($backy); imagedestroy($newy); } /* *图片沿x轴旋转,以png格式为例 *@paramstring$filename图片的url */ functionturn_x($filename) { /*创建图片资源*/ $backx=imagecreatefrompng($filename); /*获取大小*/ $widthx=imagesx($backx); $heightx=imagesy($backx); /*创建新的图片资源,保存翻转后的图片*/ $newx=imagecreatetruecolor($widthx,$heightx); /*沿着x轴翻转,就是将原图从上到下按一个像素宽度向新资源中逐个复制*/ for($i=0;$i<$heightx;$i++){ imagecopy($newx,$backx,0,$heightx-$i-1,0,$i,$widthx,1); } /*保存翻转后的图片*/ imagepng($newx,'test4.png'); /*释放资源*/ imagedestroy($backx); imagedestroy($newx); } /*调用函数*/ turn_y('1.png'); turn_x('1.png'); ?> <divstyle="float:left"> <h4>沿着y轴旋转</h4> <imgsrc="test3.png"style="border:1pxsolidred;"> </div> <divstyle="float:left"> <h4>沿着x轴旋转</h4> <imgsrc="test4.png"style="border:1pxsolidred;"> </div>