图片格式转换PHP代码
原创
52cxy
11-25 15:57
阅读数:390
PHP实现图片格式转换,代码如下:
** * 图片格式转换 * @param string $src 原图片完整路径 * @param string $dstType 目标图片格式 * @param string $quality 图片压缩质量 * @return 0|1 成功返回0 失败返回1 */ function convertImageFormat($src, $dstType, $quality=85) { $path = ''; $info = pathinfo($src); $srcType = $info['extension']; if($srcType == $dstType) return 1; if(!in_array($dstType, array('png', 'jpg','gif', 'bmg', 'webp'))) return 1; $pos = strrpos($src, '/'); if($pos !== false) $path = substr($src, 0, $pos+1) ; $dstPath = $path . $info['filename'] . '.' . $dstType; if($srcType == 'png')$imgData = imagecreatefromgif($src); elseif($srcType == 'jpg') $imgData = imagecreatefromjpeg($src); elseif($srcType == 'gif') $imgData = imagecreatefromgif($src); elseif($srcType == 'bmp') $imgData = imagecreatefrombmp($src); elseif($srcType == 'webp') $imgData = imagecreatefromwebp($src); else return 1; if($dstType == 'png') ImagePNG($imgData, $dstPath); elseif($dstType == 'jpg') imagejpeg($imgData, $dstPath, $quality); elseif($dstType == 'gif') imagegif($imgData, $dstPath); elseif($dstType == 'bmp') imagebmp($imgData, $dstPath, $quality); elseif($dstType == 'webp') imagewebp($imgData, $dstPath, $quality); return 0; }
测试代码:
convertImageFormat('sample.gif', 'jpg', 85);
共0条评论