Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 调整图像大小,然后使用Codigniter进行裁剪_Php_Codeigniter 3_Gd2 - Fatal编程技术网

Php 调整图像大小,然后使用Codigniter进行裁剪

Php 调整图像大小,然后使用Codigniter进行裁剪,php,codeigniter-3,gd2,Php,Codeigniter 3,Gd2,嗨,我正在使用Codigniter图像处理类来创建具有固定大小的缩略图 因此,我不会首先调整它的大小(因此,当我裁剪它时,我会得到一个大的图像和平) 然后修剪它 调整大小有效,但裁剪无效 这是我创建的函数 function _generate_thumbnail($filename) { $config['image_library'] = 'gd2'; $config['source_image'] = './project_pics/big/'.$filename; $co

嗨,我正在使用Codigniter图像处理类来创建具有固定大小的缩略图 因此,我不会首先调整它的大小(因此,当我裁剪它时,我会得到一个大的图像和平) 然后修剪它 调整大小有效,但裁剪无效

这是我创建的函数

function _generate_thumbnail($filename)
{
$config['image_library']     = 'gd2';
$config['source_image']      = './project_pics/big/'.$filename;
$config['new_image']         = './project_pics/resize/'.$filename;
$config['maintain_ratio']    = TRUE;
$config['width']             = 650;

$this->load->library('image_lib');
$this->image_lib->initialize($config);
$this->image_lib->resize();

$this->image_lib->clear();

$config['image_library'] = 'gd2';
$config['source_image']  = './project_pics/resize/'.$filename;
$config['new_image']     = './project_pics/crop/'.$filename;
$config['width']         = 650;
$config['height']        = 450;
$config['x_axis']        = 0;
$config['y_axis']        = 0;

$this->load->library('image_lib');
$this->image_lib->initialize($config);
$this->image_lib->crop();   
}

使用Codeigniter的
image_lib
库有一些限制。使用此库时,不能一次完成
“调整大小并裁剪”

您必须在每个操作之间重新初始化
image_lib
,如下所示:

function _generate_thumbnail($filename)
{
 $config1 = $config2 = array();

 $config1['image_library']     = 'gd2';
 $config1['source_image']      = './project_pics/big/'.$filename;
 $config1['new_image']         = './project_pics/resize/'.$filename;
 $config1['maintain_ratio']    = TRUE;
 $config1['width']             = 650;

 $this->load->library('image_lib');
 $this->image_lib->initialize($config1);
 $this->image_lib->resize();

 $this->image_lib->clear();

 $config2['image_library'] = 'gd2';
 $config2['source_image']  = './project_pics/resize/'.$filename;
 $config2['new_image']     = './project_pics/crop/'.$filename;
 $config2['width']         = 650;
 $config2['height']        = 450;
 $config2['x_axis']        = 0;
 $config2['y_axis']        = 0;

 $this->image_lib->initialize($config2);
 $this->image_lib->crop();   
}
这对我有用