Php 使用CodeIgniter中的gd2将图像旋转90个大小时
我曾使用gd2库调整图像大小。但一些图像在调整大小后旋转了90度,而不是所有图像。我没有使用任何旋转。这背后的原因可能是什么?我需要设置其他配置吗 我的代码在这里:Php 使用CodeIgniter中的gd2将图像旋转90个大小时,php,codeigniter,image-resizing,Php,Codeigniter,Image Resizing,我曾使用gd2库调整图像大小。但一些图像在调整大小后旋转了90度,而不是所有图像。我没有使用任何旋转。这背后的原因可能是什么?我需要设置其他配置吗 我的代码在这里: if(isset($_FILES) && !empty($_FILES)){ $item_images = $_FILES; $this->load->library('upload'); $this->load->library('image_lib');
if(isset($_FILES) && !empty($_FILES)){
$item_images = $_FILES;
$this->load->library('upload');
$this->load->library('image_lib');
$config['upload_path'] = './temp/';
$config['allowed_types'] = '*';
$this->upload->initialize($config);
//print_r($item_images);
foreach($item_images as $ind=>$img_name){
if($this->upload->do_upload($ind)){
$data_image = $this->upload->data();
//for cropping
$config_crop['image_library'] = 'gd2';
$config_crop['source_image'] = $config['upload_path'] . $data_image['file_name'];
$config_crop['create_thumb'] = FALSE;
$config_crop['maintain_ratio'] = TRUE;
$config_crop['width'] = 300;
$config_crop['height'] = 300;
//$config_crop['rotation_angle'] = '0';
//$config_crop['x_axis'] = '100';
//$config_crop['y_axis'] = '40';
$this->image_lib->initialize($config_crop);
if ( ! $this->image_lib->resize())
{
echo $this->image_lib->display_errors();
}
}
$image_thumb = $this->s3_model->upload_image('thumb_'.$img_name['name'] ,$config['upload_path'] . $data_image['file_name']);
if($image_thumb){
$result = $this->s3_model->upload_image($img_name['name'] ,$img_name['tmp_name']);
//unlink($config['upload_path'] . $data_image['file_name']);
}
if(! $result){
$flag = false; //Error in uploading image.
break;
}
}
}
你们有OSx工作机吗 在我的例子中,一张在我的Mac电脑中正确显示的照片,确实被转到了侧面,这是因为OSX预览在拍摄照片时检测到手机的方位 服务器没有,windows计算机也没有。。。所以我快疯了 不管您的情况是否如此,都可以使用exif\u read\u data()函数。这将为您提供方向数据,如果它存在于照片的元数据中 请点击此处: