80后 发表于 2013-1-28 23:22:26

CI--BUG 创建缩略图之后再生成水印有错误!

问题描述:上传一张图片,需要生成缩略图,原图加上水印。
可是问题出来了,就是生成的缩略图的大小变成原图的大小了,而且水印加在了缩略图上面,并没有在原图上加。
搜遍了百度,也没有给出好的解决办法。
无奈之下分析源码,进行调试。问题出在了Image_lib.php文件
      if ($this->create_thumb === FALSE OR $this->thumb_marker == '')
      {
            $this->thumb_marker = '';
      }

      $xp    = $this->explode_name($this->dest_image);

      $filename = $xp['name'];
      $file_ext = $xp['ext'];

      $this->full_src_path = $this->source_folder.$this->source_image;
      $this->full_dst_path = $this->dest_folder.$filename.$this->thumb_marker.$file_ext;
注意标红的地方,第一次生成缩略图$this->create_thumb = TRUE;
虽然使用$this->image_lib->clear(); 清空了,但是没用。它依然是TRUE
在不动源码的情况下,那就是在水印配置里面加一个参数 $config['create_thumb'] = FALSE;
这样问题就解决了。
源码还是留给官方的人员去解决吧。
真的够蛋疼的,折腾了一晚上。





smartweb 发表于 2013-1-28 23:23:41

GD的事:o

80后 发表于 2013-1-29 18:22:39

smartweb 发表于 2013-1-28 23:23 static/image/common/back.gif
GD的事

不可能的。BUG。

Hex 发表于 2013-1-31 23:17:39

感谢楼主的分享!楼主用的是什么版本的ci?

80后 发表于 2013-3-12 21:25:49

Hex 发表于 2013-1-31 23:17 static/image/common/back.gif
感谢楼主的分享!楼主用的是什么版本的ci?

好长时间没上了。
这个是版本
define('CI_VERSION', '2.1.0');
页: [1]
查看完整版本: CI--BUG 创建缩略图之后再生成水印有错误!