Php Codeigniter图像处理问题

Php Codeigniter图像处理问题,php,image,codeigniter,gd,Php,Image,Codeigniter,Gd,我正在尝试创建图像的缩略图,例如: 我需要的缩略图是500x300。我选择了一张很宽的图片(944x168)作为插图 我在codeigniter中做的第一件事是放大(或缩小)图像,使其尽可能小,但覆盖500x300区域。所以在这个例子中,我需要扩展到1685x300,因为它比它高的更宽。我通过以下设置在codeigniter中执行此操作: $config=array( "image_library"=>"gd2", "source_image"=>"blah.png",

我正在尝试创建图像的缩略图,例如:

我需要的缩略图是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


我做错了什么?

我打了两次电话
$this->image\u lib->resize()。

感谢您的帮助

CI在调整大小时会切断图像?如果您去掉
“master\u dim”=>“height”、
,会有什么不同吗?因为您已经计算了正确的尺寸,所以不需要这样做。出于好奇,请将分辨率设为1888X336,即精确两次,然后调整大小。看看它是否会被切断。胡乱猜测……@jeroen,你说得对,我不需要它。这只是在这个问题上不断尝试的结果。这并不意味着什么difference@itachi,做同样的事情