如何在codeigniter中返回新创建的拇指图像名称

时间:2013-02-18 06:45:58

标签: php codeigniter

我是codeigniter的新手。我需要调整网站中的图片大小,我正在使用以下代码。

function resizeImage($imgName)
{

        $config['image_library'] = 'gd2';
        $config['source_image'] = "/var/www/folder/backgroundimages/".$imgName;
        $config['new_image'] = "/var/www/folder/backgroundimages/thumb/".$imgName;
        $config['create_thumb'] = TRUE;
        $config['maintain_ratio'] = TRUE;
        $config['width'] = 150;
        $config['height'] = 120;
        $this->image_lib->initialize($config);
        $this->image_lib->resize();

}

这样可以正常工作,拇指将使用名称imagename_thumb.jpg创建。

我想要的是从此功能返回新创建的拇指图像名称。 怎么办呢?

3 个答案:

答案 0 :(得分:1)

调整大小功能会将拇指保存为mypic_thumb.jpg

  

上面的代码告诉image_resize函数查找位于source_image文件夹中的名为mypic.jpg的图像,然后使用GD2 image_library创建一个75 X 50像素的缩略图。由于启用了maintain_ratio选项,因此拇指将尽可能接近目标宽度和高度,同时保留原始高宽比。缩略图将被称为mypic_thumb.jpg

所以你可以返回

 $imgDetailArray=explode('.',$imgName)
 $thumbimgname=$imgDetailArray[0].'_thumb';
  return $thumbimgname.'.'.$imgDetailArray[1]  

“或”

将rawimage作为参数传递给resize函数...

 function resizeImage($imgName,$rawimage)
 {
   .......

如果要上传文件并调整文件大小,可以使用$this->upload->data()获取文件详细信息... docs此处

答案 1 :(得分:0)

您已将图片名称指定为$imgName。那你为什么要这个名字?

您可以从该位置访问该拇指图像,

/var/www/folder/backgroundimages/thumb/$imgName

答案 2 :(得分:0)

我在配置中使用$config['thumb_marker'] = "";来删除 _thumb ,有关详细信息,请查看CodeIgniter的图像处理类 文档here