妈蛋: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 > 
                              <#list

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。尼玛,真把老子当250了,坑爹货啊。

因此,事实证明,图片上传后,经过了压缩,高度变成了250了。

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

网上搜索WebUploader的资料,“WebUploader图片压缩” ,零散地找到了一些资料。
 
WebUploader的官网打开很慢,通过百度快照,看了 WebUploader API文档。

有这么一点内容:

compress {Object} [可选]

配置压缩的图片的选项。如果此选项为false, 则图片在上传前不进行压缩。

默认为:

{

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时
湖北-武汉-循礼门

时间: 2024-08-01 10:47:00

妈蛋:kinMaxShow轮播图异常,WebUploader图片上传坑爹,图片被压缩了的相关文章

js图片上传验证图片格式和大小尺寸

<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> <script type="text/javascript"> function getImageSize(obj){ var _file=document.getElementById("file

推荐ajaxfilemanager for tiny_mce 比较完善的tiny_mce编辑器的图片上传及图片管理插件PHP版 支持中文

tiny_mce编辑器,我觉得挺简洁.好用的,但就是图片上传的插件是收费的,而且网上找了半天也没有找到开源好用的上传插件. 不过功夫不负有心人,终于还就被我找到一款相当满意的插件. 这个插件的名字叫ajaxfilemanager 官方网址是http://www.phpletter.com/DOWNLOAD/ Tinymce Ajax File and Image Manager Tinymce Ajax File and Image Manager Version 1.0 Final Proje

在线HTML文档编辑器使用入门之图片上传与图片管理的实现

1 在线HTML文档编辑器使用入门之图片上传与图片管理的实现: 2 官方网址: http://kindeditor.net/demo.php 3 开发步骤: 4 1.开发中只需要导入选中的文件(通常在 webapp 下,建立 editor 文件夹 ) 5 导入:lang.plugins.themes.kindeditor.js/kindeditor-min.js-->放在editor文件夹下 6 2.在页面上引入相关的js&css文件 7 <!-- 导入Kindeditor相关文件 -

妈蛋: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/b

vue element 框架 自定义轮播图,点击上下翻图,并让图片居中

1.素材展示窗口,左侧预览滚动区域按分辨率做一屏最大预览数量做均分(超过最大预览数量是滚动条滑动) 2.左侧预览滚动区域增加浅灰色底色要求与滚动条颜色区分 3.预览滚动区域单个区域高度固定,素材图按比例缩放 4.素材图展示大图上下顶部及底部区域增加上下翻页箭头,点击有按压效果 5.预览的素材大图为左侧预览区域居中的素材,上下翻页,滚动区域居中素材跟随翻滚  以上是需求,下面贴代码 轮播图效果 template 1 <el-dialog class="material-dialog"

图片上传,图片旋转,拖拽

能够支持IE,谷歌,火狐浏览器(兼容多浏览器不容易啊) 下面仅提供核心思想和部分代码:  拖拽:是使用网上现成的JS代码,在此基础上进行适当的修改即可满足自己的需求,最主要的就是判定拖拽的范围,上传的图片不能给拖没了,所以加上个范围限定,判断超出了这个范围便拖拽无效果. 旋转与缩放要区分浏览器.. 旋转:IE浏览器下想要实现图片的旋转很简单只要调用IE提供的滤镜filter参数为一个旋转矩阵即可.谷歌和火狐浏览器图片显示用的是canvas标签而不是img标签所以图片的旋转需要用canvas标签相

ajax图片上传,图片异步上传,更新

继承前文:图片上传_ajax上传之实际应用(附上Demo) 直接上源码吧: js源码: /// <reference path="jquery-1.8.3.js" /> /// <reference path="ajaxForm/jquery.form.js" /> /*! * jQuery upload * 用于上传单个文件,上传成功后,返回文件路径. * 本插件依赖jQuery,jquery.form 请在使用时引入依赖的文件 * * D

图片上传,图片剪切jquery.imgareaselect

---恢复内容开始--- <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd&q

iOS 图片上传处理 图片压缩 图片处理

参考:http://www.open-open.com/lib/view/open1375933073921.html 提到从摄像头/相册获取图片是面向终端用户的,由用户去浏览并选择图片为程序使用.在这里,我们需要过UIImagePickerController类来和用户交互. 使用UIImagePickerController和用户交互,我们需要实现2个协议<UIImagePickerControllerDelegate,UINavigationControllerDelegate>. 代码