簡體   English   中英

Codeigniter:如何獲取調整后的圖像路徑?

[英]Codeigniter: How to get resized image path?

我正在使用默認的Codeigniter庫來調整圖像大小,以得到不同的效果。 我已經參考了codeigniter的文檔

我的圖像可以調整大小。 現在,我想將調整大小的圖像路徑存儲在數據庫中。 為此,我還檢查了庫文件和其他詳細信息,但未找到獲取調整后的圖像路徑大小的方法。

請檢查我的代碼

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;


            }
        }

    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM