首页 文章

调整源的图像大小并使用Codeigniter设置上载路径

提问于
浏览
1

我正在用Codeigniter Build 一个图像库到目前为止一切都很好,但我有一个关于图像大小调整的快速问题 .

基本上我上传源图像,并创建一个id然后将其存储在该路径/uploads/$id/source.jpg中 . 然后我尝试创建源图像的两个新图像,缩略图和带有水印的中间图像 .

使用Codeigniter的Image Manipulation Class时,您可以设置文件名和上传路径吗?当你给它源图像它是修改源图像还是复制?

public function generateThumnail($source, $screenid) {
        $config['image_library'] = 'gd2';
        $config['source_image'] = "$source";
        $config['maintain_ratio'] = TRUE;
        $config['width'] = 75;
        $config['height'] = 50;

        //Not sure how I set the upload path and file name.
        $this->load->library('image_lib', $config); 
        $this->image_lib->resize();

        //TODO: Code to be added later
        $this->image_lib->clear();
}

上传路径和文件名不包括在内,因为我不确定如何添加它们 . 有没有办法添加它们?

1 回答

  • 2

    是的,您可以指定上传路径,但使用文件上传类,而不是图像操作类 .

    $config['upload_path'] = './uploads/';
    $config['allowed_types'] = 'gif|jpg|png';
    $config['max_size'] = '100';
    $config['max_width'] = '1024';
    $config['max_height'] = '768';
    
    $this->load->library('upload', $config);
    

    http://codeigniter.com/user_guide/libraries/file_uploading.html

    如果您告诉它,CodeIgniter将创建图像的副本 .

    创建副本如果使用此首选项设置路径和/或新文件名,则调整大小功能将创建图像文件的副本(并保留原始文件):

    $config['new_image'] = '/path/to/new_image.jpg';
    

    有关此首选项的注意事项:如果仅指定了新图像名称,则它将与原始图像名称放在同一文件夹中 . 如果仅指定了路径,则新图像将放置在与原始图像同名的目标中 . 如果指定了路径和图像名称,它将放置在其自己的目标中并给出新名称 .

    http://codeigniter.com/user_guide/libraries/image_lib.html

相关问题