• jquery.fileupload-image-editor.js 中actions.resizeImage


    https://github.com/ChuckForkJS/jQuery-File-Upload/blob/master/js/jquery.fileupload-image-editor.js

    actions.resizeImage(data, resizeOptions).then(function () {
                            var imageOptions = { imagePreviewName: options.imagePreviewName };
                            actions.setImage(data, imageOptions);
                            actions.deleteImageReferences(data, {});
    
                            // Replace preview image
                            data.context.find('.preview').each(function (index, elm) {
                                $(elm).empty();
                                $(elm).append(data.files[index].preview);
                            });
                            data.context.find('.size').text(
                                thiz._formatFileSize(data.files[0].size)
                            );
                            data.context.find('.name').text(
                                data.files[0].name
                            );
    
                            $editor.modal('hide');
                        });

    先触发了jquery.fileupload-image.js中的resizeImage方法

    // Resizes the image given as data.canvas or data.img
                // and updates data.canvas or data.img with the resized image.
                // Also stores the resized image as preview property.
                // Accepts the options maxWidth, maxHeight, minWidth,
                // minHeight, canvas and crop:
                resizeImage: function (data, options) {
                    if (options.disabled || !(data.canvas || data.img)) {
                        return data;
                    }
                    options = $.extend({canvas: true}, options);
                    var that = this,
                        dfd = $.Deferred(),
                        img = (options.canvas && data.canvas) || data.img,
                        resolve = function (newImg) {
                            if (newImg && (newImg.width !== img.width ||
                                    newImg.height !== img.height ||
                                    options.forceResize)) {
                                data[newImg.getContext ? 'canvas' : 'img'] = newImg;
                            }
                            data.preview = newImg;
                            dfd.resolveWith(that, [data]);
                        },
                        thumbnail;
                    if (data.exif) {
                        if (options.orientation === true) {
                            options.orientation = data.exif.get('Orientation');
                        }
                        if (options.thumbnail) {
                            thumbnail = data.exif.get('Thumbnail');
                            if (thumbnail) {
                                loadImage(thumbnail, resolve, options);
                                return dfd.promise();
                            }
                        }
                        // Prevent orienting the same image twice:
                        if (data.orientation) {
                            delete options.orientation;
                        } else {
                            data.orientation = options.orientation;
                        }
                    }
                    if (img) {
                        resolve(loadImage.scale(img, options));
                        return dfd.promise();
                    }
                    return data;
                },
  • 相关阅读:
    tensorflow 学习
    join-semi and join-anti
    深入拆解Tomcat_Jetty 笔记
    Set化
    DDD实战-笔记
    高并发系统设计-笔记
    技术管理
    性能调优-笔记
    程序员是如何思考的-笔记
    LeetCode
  • 原文地址:https://www.cnblogs.com/chucklu/p/11120381.html
Copyright © 2020-2023  润新知