php旋转图片功能,用gd扩展中的函数实现。以下是实现的函数代码,只需轻松调用一个函数就能实现任一度数的旋转。
php源码如下:<?php
/**
* 图片旋转
* 温馨提示:如果图片旋转非90的倍数,可能会出现黑色的填充区域(圆形图片则不会)
* @param $sourcePath string 图片路径
* @param $degrees int 旋转的角度 (以逆时针方向旋转)
* @return bool
*/
function image_rotate($sourcePath, $degrees)
{
if(!file_exists($sourcePath)) return false;
$original = getimagesize($sourcePath);
//创建图像资源
switch($original[2])
{
case 1 : $source = imagecreatefromgif($sourcePath);
break;
case 2 : $source = imagecreatefromjpeg($sourcePath);
break;
case 3 : $source = imagecreatefrompng($sourcePath);
break;
default:
return false; //不支持的类型
break;
}
if(empty($source)) return false;
//旋转图片
$rotate = imagerotate($source, $degrees, 0);
//旋转后的图片保存
switch($original[2])
{
case 1 : $success = imagegif($rotate,$sourcePath);
break;
case 2 : $success = imagejpeg($rotate,$sourcePath);
break;
case 3 : $success = imagepng($rotate,$sourcePath);
break;
default:
$success = false; //不支持的类型
break;
}
return $success;
}
$res = image_rotate('E:/wwwroot/c/1.jpg', 90);
var_dump($res);