UEditor上传图片被压缩得模糊的解决方法

UEditor功能很强大,但是有个很不友好的功能:会在使用UEditor上传图片时,如果你的原始图片尺寸过大,就会先自动对图片大小进行压缩,然后将压缩的文件给servlet。也就是说,使用UEditor 上传图片后会导致图片大小发生改变并使图片变得模糊,而这是在用户毫不知情的情况下进行的操作,非常讨厌。
如果不想让上传的精美照片被UEditor 压缩得面目全非,可以通过以下方法禁止UEditor自动压缩图片:
打开该目录的文件:UEditorphpue.config.php,找到如下代码:

$CONFIG = array(
    /* 上传图片配置项 */
    "imageActionName" => "uploadimage", /* 执行上传图片的action名称 */
    "imageFieldName" => "upfile", /* 提交的图片表单名称 */
    "imageMaxSize" => $max_size, /* 上传大小限制,单位B */
    "imageAllowFiles" => $upload_allow, /* 上传图片格式显示 */
    "imageCompressEnable" => true, /* 是否压缩图片,默认是true */
    "imageCompressBorder" => 2940, /* 图片压缩最长边限制 */
    "imageInsertAlign" => "none", /* 插入的图片浮动方式 */
    "imageUrlPrefix" => "", /* 图片访问路径前缀 */

将上述代码中imageCompressEnable 后的“true”参数改为“false”即可。当然,你也可以调整imageCompressBorder 后的参数,只有边长大于该值的照片才会被UEditor 压缩。

如果你觉得压缩图片的功能还是有点用,将下面这个目录中的文件 “UEditordialogsimageimage.js”中 "quality" 值调整为100 (代码瑞安),这样会对图片质量有一些改善,但还是差强人意,所以还是建议禁止UEditor 自动压缩图片。

compress: editor.getOpt('imageCompressEnable') ? {
                     imageCompressBorder,
                    height: imageCompressBorder,
                    // 图片质量,只有type为`image/jpeg`的时候才有效。
                    quality: 90,
                    // 是否允许放大,如果想要生成小图的时候不失真,此选项应该设置为false.
                    allowMagnify: false,
                    // 是否允许裁剪。
                    crop: false,
                    // 是否保留头部meta信息。

原文地址:https://www.cnblogs.com/donchen/p/4568707.html