在codeigniter中一次制作2个缩略图

时间:2010-05-03 08:19:11

标签: php image codeigniter thumbnails

任何人都可以告诉我如何在codeigniter中创建具有不同大小和位置的相同图像的2个不同缩略图。我已经创建了一个上传功能和另一个缩略图生成功能,它工作正常,但无法理清如何一次创建2个不同的缩略图。任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:12)

实际上很容易......

function create_thumbs()
{
    $this->load->library('image_lib');

    $path = "path/to/image/";

    $source_image = "original.jpg";
    $medium_image = "medium.jpg";
    $small_image = "small.jpg";

    // Resize to medium

    $config['source_image'] = $path.$source_image;
    $config['new_image'] = $path.$medium_image;
    $config['width'] = 200;
    $config['height'] = 200;

    $this->image_lib->initialize($config); 

    if ( ! $this->image_lib->resize())
    {
        // an error occured
    }

    // Keep the same source image

    $config['new_image'] = $path.$small_image;
    $config['width'] = 50;
    $config['height'] = 50;

    $this->image_lib->initialize($config); 

    if ( ! $this->image_lib->resize())
    {
        // an error occured
    }
}

答案 1 :(得分:4)

所以你有一个thumbnail_generator函数,并说它需要参数original_file_name,new_file_name和thumbnail_size。

只需打两次电话!

thumbnail_generator( original_file.jpg, new_file_sm.jpg, 300 );
thumbnail_generator( original_file.jpg, new_file_xsm.jpg, 150 );

答案 2 :(得分:0)

在上面的答案中稍作修改。在函数的开头添加它

$this->load->library('image_lib');
$this->image_lib->clear();

以前的配置需要清除