【发布时间】:2012-12-03 14:52:28
【问题描述】:
我正在尝试创建图像的缩略图,例如,这个:
我需要缩略图为 500x300。我选择了一张非常宽的图片 (944x168) 进行说明。
我在 codeigniter 中做的第一件事是放大(或缩小)图像,使其尽可能小,但覆盖 500x300 区域。所以在这种情况下,我需要缩放到 1685x300,因为它比它高。我使用以下设置在 codeigniter 中执行此操作:
$config=array(
"image_library"=>"gd2",
"source_image"=>"blah.png",
"maintain_ratio"=>true,
"master_dim"=>"height", /* in this case, with a wide image, this is what I want*/
"height"=>300,
"width"=>1685 /* calculated by (width/height)*300 */
);
然后我执行如下:
$this->load->library('image_lib',$config);
$this->image_lib->resize();
但是 codeigniter 给了我这个: 这不是我所期望的,因为我只是在这个阶段调整了大小,而不是裁剪。这是正确的分辨率,1685x300
我希望这样,但分辨率为 1685x300
我在这里做错了什么?
【问题讨论】:
-
CI 在调整大小时截断图像?
-
去掉
"master_dim"=>"height",会有什么不同吗?反正你不需要那个,因为你已经计算了正确的尺寸。 -
只是出于好奇,将分辨率设为 1888X336,即精确两次,然后调整大小。看看它是否会切断。只是一个疯狂的猜测......
-
@jeroen,你说得对,我不需要它。这只是解决这个问题的残留物。没有区别
-
@itachi,做同样的事情
标签: php image codeigniter gd