所以我正在使用以下代码(成功)裁剪我正在上传的图像:
$file_name = $this->input->post('file_name');
$x1 = $this->input->post('x1');
$y1 = $this->input->post('y1');
$x2 = $this->input->post('x2');
$y2 = $this->input->post('y2');
//die('width: '.$width.' height: '.$height.' id: '.$id.' file_name: '.$file_name.' x1: '.$x1.' x2: '.$x2.' y1: '.$y1.' y2: '.$y2.' w: '.$w.' h: '.$h);
$config['image_library'] = 'gd2';
$config['source_image'] = './images/uploads/temp/'.$file_name;
$config['maintain_ratio'] = FALSE;
$config['width'] = $y2;
$config['height'] = $y2;
$config['x_axis'] = $x1;
$config['y_axis'] = $y1;
$this->image_lib->initialize($config);
此时我想调整图像大小,因为我刚刚得到了我想要的选择和比例,我不知道该怎么做。以下是我认为之后会以相同方法立即起作用的内容:
$config['width'] = 180;
$config['height'] = 180;
$this->load->library('image_lib', $config);
$this->image_lib->resize();
if ( ! $this->image_lib->resize() )
{
die( $this->image_lib->display_errors() ); //
}
它不会出现任何错误或任何错误,它只是不会调整图像大小。你能帮我弄清楚发生了什么吗?
答案 0 :(得分:2)
就好像第二次加载库(因此再次初始化它)一样,它没有收到它需要的所有参数。您是使用相同方法或其他方法中的代码吗? 无论如何,如果在相同的方法中,作为测试尝试在清除它们之后加倍一些配置:
//
//CROPPING HERE....Then:
//
$this->image_lib->clear();
$config['image_library'] = 'gd2';
$config['source_image'] = './images/uploads/temp/'.$file_name;
$config['maintain_ratio'] = TRUE;
$config['width'] = 180;
$config['height'] = 180;
$this->image_lib->initialize($config);
if ( ! $this->image_lib->resize())
{
echo $this->image_lib->display_errors();
}
确保文件夹和文件具有正确的权限。