妈蛋:kinMaxShow旋转***异常,WebUploader图片上传坑爹,图像被压缩

今天晚上在改造轮播图。

     原来的代码是这种

    <div>
<img src="${static}/image/index/banner/`.jpg" />
</div>
<div>
<img src="${static}/image/index/banner/2.jpg" />
</div>
<div>
<img src="${static}/image/index/banner/3.jpg" />
</div> 

   为了方便管理。轮播图后台可以管理。所曾经台的轮播图图片,应该从数据库中得到。

 


  这个功能,就是两三分钟的事,立刻就搞定了。数据库



   改造后的代码:
  <!--轮播图 -->后端

<div id="kinMaxShow" >
<#if bannerPhotoList??

 

&& bannerPhotoList?size gt 0 > 
                              <#listide

bannerPhotoList as item>
<div>
<img height="350px" src="${base}/image/${item.url}" />
</div>
</#list> <#else>
<div>
<img src="${static}/image/index/banner/4.jpg" />
</div>
<div>
<img src="${static}/image/index/banner/2.jpg" />
</div>
<div>
<img src="${static}/image/index/banner/3.jpg" />
</div>
</#if>
</div> 

问题出现了
     自从使用了动态的图片,轮播图的图片高度没有占满“350px” 。图片的上下都有空白。很是可恶。

 



推測
     后端代码的问题。
     通过对照2种状况生成的HTML,全然同样,除了图片地址不同。

不知道。通过了多久的Chrome查看元素。忽然意识到是否是图片有问题了。

去查看图片,发现高度仅仅有250。url

尼玛,真把老子当250了。坑爹货啊。

所以,事实证实,图片上传后,通过了压缩,高度变成了250了。debug



期间。我也debug SpringMVC图片上传的代码。进入到后台的时候。图片已经变小了。所以。图片变小是WebUploader图片上传组件干的好事。图片



网上搜索WebUploader的资料,“WebUploader图片压缩” ,零散地找到了一些资料。文档


 
WebUploader的官网打开很是慢,经过百度快照,看了 WebUploader API文档。it



有这么一点内容:

 compress {Object} [可选]图片上传

配置压缩的图片的选项。

 

假设此选项为false, 则图片在上传前不进行压缩。class

 
默以为:
 
{
    width: 1600,
    height: 1600,
 
    // 图片质量。仅仅有type为`image/jpeg`的时候才有效。
    quality: 90,
 
    // 是否赞成放大,假设想要生成小图的时候不失真。此选项应该设置为false.
    allowMagnify: false,
 
    // 是否赞成裁剪。
    crop: false,
 
    // 是否保留头部meta信息。

 

 

    preserveHeaders: true,
 
    // 假设发现压缩后文件大小比原来还大,则使用原来图片
    // 此属性可能会影响图片本身主动纠正功能
    noCompressIfLarger: false,
 
    // 单位字节,假设图片大小小于此值。不会採用压缩。
    compressSize: 0
}

可以清楚地知道,这个组件有压缩功能,在知足必定的条件下会压缩。

为了方便,直接在upload.js中添加
“ compress:false,” 不压缩,这个时候。上传图片就是“原样”了。

 


至于 上面配置的“width:1600px”,我推測是图片的宽度和高度达到必定条件就压缩。



总结: kinMaxShow轮播组件没有问题,WebUploader看到图片太大很是不爽,就启用了压缩。

解决这个问题的思路:发现了问题,分析问题的类型,推測。验证。网上搜资料,找准关键词。本次搜索关键词“WebUploader 压缩” 。射线-的正式启动2创业旅程2015年3月18日 23时间湖北-武汉-循礼门