PHP实现图片旋转效果实例代码
PHP对图像的旋转
<div> <h4>旋转之前</h4> <img src="1.png" style="border:1px solid red;"> </div> <?php header("content-type","text/html;charset=utf-8"); /* *图片沿y轴旋转,以png格式为例 *@param string $filename 图片的url */ function turn_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格式为例 *@param string $filename 图片的url */ function turn_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'); ?> <div style="float:left"> <h4>沿着y轴旋转</h4> <img src="test3.png" style="border:1px solid red;"> </div> <div style="float:left"> <h4>沿着x轴旋转</h4> <img src="test4.png" style="border:1px solid red;"> </div>
赞 (0)