200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > php iphone图片旋转图片 移动端上传图片iphone图片旋转以及服务端处理方法

php iphone图片旋转图片 移动端上传图片iphone图片旋转以及服务端处理方法

时间:2021-12-08 21:33:22

相关推荐

php iphone图片旋转图片 移动端上传图片iphone图片旋转以及服务端处理方法

判断是否需要旋转

/**

*iphone判断图片方向,是否需要旋转图片

*/

if(strpos($_SERVER[‘HTTP_USER_AGENT‘], ‘iPhone‘)&&in_array($ext, array(‘jpg‘,‘png‘,‘gif‘,‘jpeg‘,‘jepg‘))){

$exif =exif_read_data($tmp);

switch ($exif[‘Orientation‘]){

case 6:

self::imgturn($tmp,1,$ext);

break;

case 3:

self::imgturn($tmp,1,$ext);

self::imgturn($tmp,1,$ext);

break;

case 8:

self::imgturn($tmp,2,$ext);

break;

}

}

一下是php旋转方法

function imgturn($src, $direction = 1,$ext) {

switch ($ext) {

case ‘gif‘ :

$img = imagecreatefromgif ( $src );

break;

case ‘jepg‘:

case ‘jpg‘ :

case ‘jpeg‘ :

$img = imagecreatefromjpeg ( $src );

break;

case ‘png‘ :

$img = imagecreatefrompng ( $src );

break;

default :

die ( ‘图片格式错误!‘ );

break;

}

$width = imagesx ( $img );

$height = imagesy ( $img );

$img2 = imagecreatetruecolor ( $height, $width );

// 顺时针旋转90度

if ($direction == 1) {

for($x = 0; $x < $width; $x ++) {

for($y = 0; $y < $height; $y ++) {

imagecopy ( $img2, $img, $height - 1 - $y, $x, $x, $y, 1, 1 );

}

}

} else if ($direction == 2) {

// 逆时针旋转90度

for($x = 0; $x < $height; $x ++) {

for($y = 0; $y < $width; $y ++) {

imagecopy ( $img2, $img, $x, $y, $width - 1 - $y, $x, 1, 1 );

}

}

}

switch ($ext) {

case ‘jepg‘:

case ‘jpg‘ :

case "jpeg" :

imagejpeg ( $img2, $src, 100 );

break;

case "gif" :

imagegif ( $img2, $src, 100 );

break;

case "png" :

imagepng ( $img2, $src, 100 );

break;

default :

die ( ‘图片格式错误!‘ );

break;

}

imagedestroy ( $img );

imagedestroy ( $img2 );

}

原文:/sss-justdDoIt/p/6259339.html

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。