代码点火器:如何获取调整大小的图像路径


Codeigniter: How to get resized image path?

我正在使用编码器的默认库来调整图像大小以获得不同的拇指。为此,我参考了代码点火器的文档。

我的图像可以调整大小。现在,我想将调整大小的图像路径存储在数据库中。为此,我还检查了库文件和其他详细信息,但没有找到调整大小的图像路径的方法。

请检查我的代码

protected function createThumbs($params)
{                               
    if( !is_dir($params['targetPath']) ) {
        mkdir($params['targetPath'], 0777, TRUE);
    }
    $tConfig['image_library'] = 'gd2';
    $tConfig['source_image'] = $params['sourcePath'];                               
    $tConfig['new_image'] = $params['targetPath'];
    $tConfig['create_thumb'] = TRUE;
    $tConfig['maintain_ratio'] = TRUE;
    $tConfig['width'] = $params['width'];
    $tConfig['height'] = $params['height'];     
    $this->load->library('image_lib', $tConfig);                                
    if (!$this->image_lib->resize()) {
        echo $this->image_lib->display_errors();
     }
    // clear //
    $this->image_lib->clear();
}

有谁知道如何获得它?

尝试

protected function createThumbs($params)
{                               
    if( !is_dir($params['targetPath']) ) {
        mkdir($params['targetPath'], 0777, TRUE);
    }
    $tConfig['image_library'] = 'gd2';
    $tConfig['source_image'] = $params['sourcePath'];                               
    $tConfig['new_image'] = $params['targetPath'];
    $tConfig['create_thumb'] = TRUE;
    $tConfig['maintain_ratio'] = TRUE;
    $tConfig['width'] = $params['width'];
    $tConfig['height'] = $params['height'];     
    $this->load->library('image_lib', $tConfig);                                
    if (!$this->image_lib->resize()) {
        echo $this->image_lib->display_errors();
     }
    // clear
    $this->image_lib->clear();
    #return
    $file_info = pathinfo($tConfig['new_image']);
    return  $file_info['dirname'].'/'.$file_info['filename'].'_thumb.'.$file_info['extension'];
}

您的拇指文件将在文件名末尾使用 _thumb 调用。例如,如果您的文件是:image.jpg调整大小的拇指将被称为image_thumb.jpg

public function addUserImages()
    {
        $image                       =      preg_replace("/'s+/", "_", $_FILES['user_image']['name']);
        $config['upload_path']       =      "./Images/ProfileImages/";
        $config['allowed_types']     =      "gif|jpg|png|jpeg|JPG|JPEG|PNG|GIF"; 
        $config['file_name']         =      $image;
        $this->load->library('upload',$config);
        if($this->upload->do_upload("user_image")==false) 
        {
                $error = array('error' => $this->upload->display_errors());
                echo $error['error'];
                return $error->error;
        }
        else
        {
            $data               = $this->upload->data();
            $newImage       = $data['file_name'];
            $config['image_library']   = 'gd2';
            $config['source_image']    = './Images/ProfileImages/'.$newImage;
            $config['new_image']       = './Images/ProfileImages/small_'.$newImage;
            $config['create_thumb']    = FALSE;
            $config['maintain_ratio']  = TRUE;
            $config['quality']         = '100';
            $config['width']           = 250;
            $config['height']          = 250;
            $this->image_lib->clear();
            $this->image_lib->initialize($config);
            $this->load->library('image_lib', $config);
            if(!$this->image_lib->resize())
            {
              return  $this->image_lib->display_errors(); 
            }
        else {
            $newImage   =   "small_".$newImage;

            }
        }
    }