autoCropImage 彩旗裁切生成图片readfile加载无法显示图像
- 时间:
- 浏览:1333
- 来源:无双科技
autoCropImage 是一款图片自动缩放程序基于 ThinkPHP5.1+ 的图片缩放程序,可以将图片自动缩放成指定大小,减少图片体积,从而加快下载速度,降低下载时间和成本。
使用说明
方式一:50x100 缩放成 50x100 大小
方式二:50x100m2 方式一并且使用mode 2
方式三:50x100v2014 方式一并且指定缓存版本2014
方式四:50x100m2v2014 方式一,使用mode 2并且指定缓存版本2014
缩放模式说明
mode 1 : 强制裁剪,生成图片严格按照需要,不足放大,超过裁剪,图片始终铺满。
mode 2 : 和1类似,但不足的时候 不放大 会产生补白,可以用png消除。
mode 3 : 只缩放,不裁剪,保留全部图片信息,会产生补白。
mode 4 : 只缩放,不裁剪,保留全部图片信息,此时的参数只是限制了生成的图片的最大宽高,不产生补白。
mode 5 : 生成的图比例严格按照需要的比例,宽和高不超过给定的参数。
在有大量图片展示的情况下,生成的图片可以大大减少网站加载速度,不过在使用过程中发现每当第一次加载生成图片时,图片无法显示,必须强制刷新后才正常显示。
然后找到生成目录,检查文件是否存在
var_dump(file_exists($thumb));
结果:
文件也都正常生成。研究发现在图片输出时读取的图片会加载缓存当中
public function show_pic($file){ $info = getimagesize($file); header("Content-Type: {$info['mime']}"); readfile($file); exit();}
同时因为设置原因读取数据没有发送到客户端,所以在readfile前加上ob_clean(); flush();就可以了
public function show_pic($file){ $info = getimagesize($file); header("Content-Type: {$info['mime']}"); ob_clean();flush(); readfile($file); exit();}
猜你喜欢