2019独角兽企业重金招聘Python工程师标准>>>

百度编辑器Ueditor的多图上传用的是百度自家的webuploader插件,本身这个插件上传是有图片压缩的,可能由于某种bug压缩时好时坏,经常不压缩。

这部分的代码在/editor/dialogs/image/image.js 在380行左右有这部分的代码。

其中imageCompressBorder数值是在/editor/php/congfig.json里面设置的

奇怪的时候部分图片就是不压缩,可能的确图片某些问题,例如png图片改后缀jpg这样的图片就不压缩。

问题还是要解决。

1、修改/editor/php/config.json

修改8、9行

"imageCompressEnable": true, /* 是否压缩图片,默认是true */
"imageCompressBorder": 600, /* 图片压缩最长边限制 */

2、修改/editor/php/action_upload.php 在17行后面加上部分代码,增加resize、maxwidth2个参数

case 'uploadimage':$config = array("pathFormat" => $CONFIG['imagePathFormat'],"maxSize" => $CONFIG['imageMaxSize'],"allowFiles" => $CONFIG['imageAllowFiles'],"resize"=> $CONFIG['imageCompressEnable'],"maxwidth"=> CONFIG['imageCompressBorder']);

3、修改/editor/php/Uploader.class.php 添加压缩方法 在upFile()方法,移动文件后面,大约在125行添加一个压缩图片的判断

//移动文件
if (!(move_uploaded_file($file["tmp_name"], $this->filePath) && file_exists($this->filePath))) { //移动失败$this->stateInfo = $this->getStateInfo("ERROR_FILE_MOVE");
} else { //移动成功$this->stateInfo = $this->stateMap[0];
}
//压缩图片if($this->config['resize']){$this->resize($this->filePath,$this->filePath);
}

在文档的最后面增加压缩文件的resize方法

/*** 压缩图片*/
public function resize($oldfilepath,$newfilepath){list($owidth,$oheight)=getimagesize($oldfilepath);if($owidth > $this->config['maxwidth'] ){switch ($this->fileType){case '.jpg':$nsrc = imagecreatefromjpeg($oldfilepath);break;case '.jpeg':$nsrc = imagecreatefromjpeg($oldfilepath);break;case '.gif':$nsrc = imagecreatefromgif($oldfilepath);break;case '.png':$nsrc = imagecreatefrompng($oldfilepath);break;default://alert("上传图片格式不正确。");}$newwidth= $this->config['maxwidth'];$newheight=($oheight/$owidth)*$this->config['maxwidth'];$tmp=imagecreatetruecolor($newwidth,$newheight);imagecopyresampled($tmp,$nsrc,0,0,0,0,$newwidth,$newheight,$owidth,$oheight);//输出不同类型图片switch ($this->fileType){case '.jpg':imagejpeg($tmp,$newfilepath,100);break;case '.jpeg':imagejpeg($tmp,$newfilepath,100);break;case '.gif':imagegif($tmp,$newfilepath);break;case '.png':imagepng($tmp,$newfilepath);break;default://alert("上传图片格式不正确。");}imagedestroy($nsrc);imagedestroy($tmp);}
}

好啦,可以愉快的上传压缩图片了,管你是html5上传还是flash上传,单张还是多张,都可以压缩了

转载于:https://my.oschina.net/lambert519/blog/892475

百度编辑器Ueditor 多图上传出现部分照片尺寸不压缩的问题解决相关推荐

  1. 百度编辑器 UEditor 多图上传弹窗中去掉【在线管理】和【图片搜索】Tab页

    网上搜到说这两个tab注释没用,要直接删除.其实style="display:none"也是可以的,亲测. <!-- 隐藏,在线管理.搜索图片 --> <span ...

  2. asp.net 百度编辑器 UEditor 上传图片 图片上传配置 编辑器配置 网络连接错误,请检查配置后重试...

    1.配置ueditor/editor_config.js文件,将 //图片上传配置区,imageUrl:URL+"net/imageUp.ashx" //图片上传提交地址,imag ...

  3. 通过UEditor多图上传到七牛云出现图片不全,或上传失败bug

    在node-ueditor进行拓展,通过多图上传直接将图片保存到七牛云.在保存的时候通过busboy包进行文件流保存 bug: 发现多张图片上传时候,部分图片出现上传失败,或显示出得图片只有一半的情况 ...

  4. themyleaf 图片上传_springboot thymeleaf 整合 百度富文本编辑器UEditor进行图片上传

    项目中需要使用到富文本编辑器,找来找去发现百度UEditor富文本编辑器在国内最为常用因此就尝试引入.编辑器官网是:http://ueditor.baidu.com/website/index.htm ...

  5. tinymce编辑器增加多图上传、百度地图功能以及高级功能格式刷演示

    效果如下:http://t.csdn.cn/Vhlld 演示: tinymce上传图片以及基本高级功能演示 基本配置:(上传方法自己根据后台自行添加) <script>// tinyMCE ...

  6. 关于ueditor多图上传加水印

    最近小二哥应运营要求,需在后台编辑器做图片添加水印功能,由于ueditor编辑器本身没有添加水印的功能: 所以小二哥参考了网上的一些方法,加上实现的步骤整理成文档,希望对需要的人有帮助. 1.打开ue ...

  7. java ueditor 图片上传加水印_关于ueditor多图上传加水印

    最近小二哥应运营要求,需在后台编辑器做图片添加水印功能,由于ueditor编辑器本身没有添加水印的功能: 所以小二哥参考了网上的一些方法,加上实现的步骤整理成文档,希望对需要的人有帮助. 1.打开ue ...

  8. 百度php editor图片上传到其他盘,百度编辑器Editor图片独立上传

    将百度编辑器中的图片独立出来上传: html:代码 var myEditorImage,d,myEditorImage = new UE.ui.Editor(); myEditorImage.rend ...

  9. 解决:百度编辑器UEditor,怎么将图片保存到图片服务器,或者上传到ftp服务器的问题(如果你正在用UE,这篇文章值得你看下)

    解决:百度编辑器UEditor,怎么将图片保存到图片服务器,或者上传到ftp服务器的问题(如果你正在用UE,这篇文章值得你看下) 参考文章: (1)解决:百度编辑器UEditor,怎么将图片保存到图片 ...

  10. 百度编辑器ueditor上传视频后,再次编辑视频无法播放

    开发过程使用百度编辑器ueditor,第一次上传视频可正常播放.第二次编辑一个视频无法播放! 只需修改ueditor.config.js中两行配置即可: 把img修改成:img:    ['src', ...

最新文章

  1. 如果你不习惯新版的 Github 的 UI 界面,可以试试这款插件
  2. 在 k8s 上最小化安装 KubeSphere
  3. ITK:将itk :: CovariantVectors的点积
  4. ssm使用全注解实现增删改查案例——mybatis-config.xml
  5. 迁移pg_塑料包装袋中添加剂迁移到食品和药品中危害健康
  6. 偏标记(partial)学习
  7. JDBC链接MySQL数据库
  8. asp 环境配置到mysql数据库增删改查
  9. 单目标决策---决策的分类
  10. java freepascal_Free Pascal
  11. 做饭给自己一人吃,如何最快速,且营养有保证?
  12. 练习:随机点名器案例
  13. 人类小行星探测任务回顾
  14. 中文名转换成英文名(c#)
  15. 群、环、域的概念总结
  16. f下行到什么形成全音_乐理试题二
  17. 2021年制冷与空调设备运行操作免费试题及制冷与空调设备运行操作操作证考试
  18. caoz的梦呓:谈谈信息不对称与To B业务的难点【推荐】
  19. 基于GPU的多相机拼接全景技术
  20. Java入门 - 方法的使用

热门文章

  1. Android中JNI调用过程简述
  2. 【认识硬件】之 电压比较器芯片LM393
  3. 安装虚拟机提示未能启用服务器,win7系统共享虚拟机提示VMware Workstation Server共享服务不能启动的解决方法...
  4. 离散数学常见面试问题总结,含答案
  5. 微信小程序地图导航实例讲解
  6. 计算机毕业设计、课程设计、实战项目之[含论文+答辩PPT+任务书+中期检查表+源码等]基于ssm的NBA球队管理系统
  7. rapidminer decision tree(决策树)手册
  8. SplitContainer控件的理解
  9. CouchBase简单介绍
  10. 【IoT】 产品研发:位深为1的BMP格式图片详解