2015-03-09 2 views
2

мы создаем приложение, которое позволяет загружать изображения, теперь мы хотим уменьшить размер изображения, чтобы уменьшить время загрузки страницы, теперь это код, который я использую, это не работает, размер изображения остается 100% это не уменьшает, пожалуйста, помогите, может быть, я что-то не хватает или я делаю что-то неправильноКак изменить размер изображения (качество) с помощью codeigniter image_lib

if(!empty($_FILES['image_field']['name'])) 
{ 
    $config['upload_path'] = 'image_folder'; 
    $config['allowed_types'] = 'jpg|png'; 
    $config['max_size'] = '262144'; 
    $config['file_name'] = 'my_image_name'; 
    $this->load->library('upload',$config); 
    if(!$this->upload->do_upload('image_field')) 
    { 
     $this->session->set_flashdata('error','<div class="alert alert-warning">Something went wrong...try again...</div>'); 
     redirect('Controller/function_name'); 
    } 
    else 
    { 
     $type = array('image/png'=>'png','image/jpg'=>'jpg','image/jpeg'=>'jpg'); 
     $config['image_library'] = 'gd2'; 
     $config['source_image'] = base_url().'image_folder'.$config['file_name'].'.'.$type[$_FILES['image_field']['type']]; 
     $config['quality'] = '50%'; 
     $this->load->library('image_lib', $config); 
     $this->image_lib->resize(); 
     // save to database  
    } 
} 

я использую CodeIgniter 3.0

+0

вы можете взять alook [здесь] (http://stackoverflow.com/a/39416169/2368696) или прямо [здесь] (http://stackoverflow.com/a/14072710/2368696) –

ответ

3

Вы должны использование без % как целое:

$config['quality'] = 50; 
+0

Я не см. «Качество», указанное в качестве опции в документах «Тип загрузки файлов» по ​​адресу http://www.codeigniter.com/user_guide/libraries/file_uploading.html ... ... но из вашего примера видно, что это в «классе манипуляции изображения» по адресу http://www.codeigniter.com/user_guide/libraries/image_lib.html – dsdsdsdsd

+0

@dsdsdsdsd да, опция 'quality' в классе' image_lib'. – Bora

0

Я также должен был установить свой параметр image_library в «gd», прежде чем начнется работа по изменению качества. Интересно, почему он не работает с «GD2»

$config['image_library'] = 'gd'; 
$config['quality']  = 40; 
0
$config['image_library'] = 'gd2'; 
$config['quality']  = 60; 

работает отлично настроить качество и проверить размер файла изображения его сохранения. будут отличаться.

Смежные вопросы