调整图像大小以完全适合尺寸(Codeigniter)

时间:2011-07-07 15:21:14

标签: php jquery css codeigniter gd

我在Codeigniter中使用图像库来调整图像大小。我注意到CI仅调整图像大小以适应指定的尺寸:调整大小以适应30px×20px框的50px乘50px图像将调整为20px×20px并为空白区域留下黑色区域。

我想要的是调整大小,使调整大小的图像填充整个30像素×30像素的空间,多余的部分被裁剪掉。

这在Codeigniter中是否可行?

1 个答案:

答案 0 :(得分:1)

我认为您需要首先调整图像大小,选择宽度或高度作为“主”尺寸,然后裁剪它。

我没有测试过这段代码,但请试一试。如果不出意外,它应该给你这个想法。

$config['source_image'] = '/path/to/image/mypic.jpg';

$config['width'] = 30;
$config['height'] = 0; // No restraint on height
$this->load->library('image_lib', $config);
$this->image_lib->resize();

$config['x_axis'] = 30; // Same width as before
$config['y_axis'] = 20; // Crop to height
$this->image_lib->initialize($config);
$this->image_lib->crop();

您可能希望尝试将裁剪尺寸居中。无论您选择哪种方式,都需要在某个时刻裁剪图像。

我应该注意,我不确定$config['height'] = 0是否是忽略身高的正确方法,它可能必须是FALSE,一个非常高的数字,或者完全删除(没有工作)暂时使用CI图像库。