gpt4 book ai didi

Codeigniter 单个图像到多个调整大小

转载 作者:行者123 更新时间:2023-12-03 10:05:27 26 4
gpt4 key购买 nike

我是 Codeigniter 的新手。这就是我想要做的:

  • 用户上传个人资料图片。
  • 我将原始图像调整为多种尺寸,例如400×300、200×200 和 32×32。

  • 但是当我上传图像时,它只成功地重新调整了一个维度,400×300。

    这是我的代码:
     $config['image_library']   = 'gd2';
    $config['source_image'] = '/path/to/image/mypic.jpg';
    $config['create_thumb'] = TRUE;
    $config['maintain_ratio'] = TRUE;
    $config['width'] = 400;
    $config['height'] = 300;
    $config['new_image'] = 400x300image;
    $this->load->library('image_lib', $config);
    $this->image_lib->resize();
    $this->image_lib->clear()

    $config['image_library'] = 'gd2';
    $config['source_image'] = '/path/to/image/mypic.jpg';
    $config['create_thumb'] = TRUE;
    $config['maintain_ratio'] = TRUE;
    $config['width'] = 200;
    $config['height'] = 200;
    $config['new_image'] = 200x200image;
    $this->load->library('image_lib', $config);
    $this->image_lib->resize();
    $this->image_lib->clear()

    $config['image_library'] = 'gd2';
    $config['source_image'] = '/path/to/image/mypic.jpg';
    $config['create_thumb'] = TRUE;
    $config['maintain_ratio'] = TRUE;
    $config['width'] = 32;
    $config['height'] = 32;
    $config['new_image'] = 32x32image;
    $this->load->library('image_lib', $config);
    $this->image_lib->resize();
    $this->image_lib->clear();

    我尝试使用不同的配置名称,如 $config2$config3,但我没有得到输出。

    请帮我解决这个问题。

    最佳答案

    我的一个 CI 应用程序中内置了一个类似的功能。就我而言,我需要另一个函数中的配置文件,因此我构建了单独的版本。

    不要多次加载库。一次就好了。每次只需使用新配置重新初始化库。

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

    /* First size */
    $configSize1['image_library'] = 'gd2';
    $configSize1['source_image'] = '/path/to/image/mypic.jpg';
    $configSize1['create_thumb'] = TRUE;
    $configSize1['maintain_ratio'] = TRUE;
    $configSize1['width'] = 400;
    $configSize1['height'] = 300;
    $configSize1['new_image'] = '400x300image';

    $this->image_lib->initialize($configSize1);
    $this->image_lib->resize();
    $this->image_lib->clear();

    /* Second size */
    $configSize2['image_library'] = 'gd2';
    $configSize2['source_image'] = '/path/to/image/mypic.jpg';
    $configSize2['create_thumb'] = TRUE;
    $configSize2['maintain_ratio'] = TRUE;
    $configSize2['width'] = 200;
    $configSize2['height'] = 200;
    $configSize2['new_image'] = '200x200image';

    $this->image_lib->initialize($configSize2);
    $this->image_lib->resize();
    $this->image_lib->clear();

    等等。我想,为了内存,您可以取消设置和重置配置文件,如上所述,但是如果您计划像我一样在单独的 Controller 方法中使用图像大小调整,我发现单独保存它们很有帮助。

    关于Codeigniter 单个图像到多个调整大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12274630/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com