(global["webpackJsonp"] = global["webpackJsonp"] || []).push([["components/invinbg-image-cropper/invinbg-image-cropper"],{ /***/ 423: /*!*****************************************************************************************************!*\ !*** D:/meloinfo/sugarpark-mini-program/components/invinbg-image-cropper/invinbg-image-cropper.vue ***! \*****************************************************************************************************/ /*! no static exports found */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony import */ var _invinbg_image_cropper_vue_vue_type_template_id_02b3d9d8_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./invinbg-image-cropper.vue?vue&type=template&id=02b3d9d8&scoped=true& */ 424); /* harmony import */ var _invinbg_image_cropper_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./invinbg-image-cropper.vue?vue&type=script&lang=js& */ 426); /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _invinbg_image_cropper_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _invinbg_image_cropper_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__)); /* harmony import */ var _invinbg_image_cropper_vue_vue_type_style_index_0_id_02b3d9d8_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./invinbg-image-cropper.vue?vue&type=style&index=0&id=02b3d9d8&scoped=true&lang=css& */ 428); /* harmony import */ var _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 9); var renderjs /* normalize component */ var component = Object(_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])( _invinbg_image_cropper_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"], _invinbg_image_cropper_vue_vue_type_template_id_02b3d9d8_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"], _invinbg_image_cropper_vue_vue_type_template_id_02b3d9d8_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"], false, null, "02b3d9d8", null, false, _invinbg_image_cropper_vue_vue_type_template_id_02b3d9d8_scoped_true___WEBPACK_IMPORTED_MODULE_0__["components"], renderjs ) component.options.__file = "components/invinbg-image-cropper/invinbg-image-cropper.vue" /* harmony default export */ __webpack_exports__["default"] = (component.exports); /***/ }), /***/ 424: /*!************************************************************************************************************************************************!*\ !*** D:/meloinfo/sugarpark-mini-program/components/invinbg-image-cropper/invinbg-image-cropper.vue?vue&type=template&id=02b3d9d8&scoped=true& ***! \************************************************************************************************************************************************/ /*! exports provided: render, staticRenderFns, recyclableRender, components */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony import */ var _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_invinbg_image_cropper_vue_vue_type_template_id_02b3d9d8_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--16-0!../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./invinbg-image-cropper.vue?vue&type=template&id=02b3d9d8&scoped=true& */ 425); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_invinbg_image_cropper_vue_vue_type_template_id_02b3d9d8_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"]; }); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_invinbg_image_cropper_vue_vue_type_template_id_02b3d9d8_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; }); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_invinbg_image_cropper_vue_vue_type_template_id_02b3d9d8_scoped_true___WEBPACK_IMPORTED_MODULE_0__["recyclableRender"]; }); /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "components", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_invinbg_image_cropper_vue_vue_type_template_id_02b3d9d8_scoped_true___WEBPACK_IMPORTED_MODULE_0__["components"]; }); /***/ }), /***/ 425: /*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--16-0!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!D:/meloinfo/sugarpark-mini-program/components/invinbg-image-cropper/invinbg-image-cropper.vue?vue&type=template&id=02b3d9d8&scoped=true& ***! \************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ /*! exports provided: render, staticRenderFns, recyclableRender, components */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return recyclableRender; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "components", function() { return components; }); var components var render = function() { var _vm = this var _h = _vm.$createElement var _c = _vm._self._c || _h } var recyclableRender = false var staticRenderFns = [] render._withStripped = true /***/ }), /***/ 426: /*!******************************************************************************************************************************!*\ !*** D:/meloinfo/sugarpark-mini-program/components/invinbg-image-cropper/invinbg-image-cropper.vue?vue&type=script&lang=js& ***! \******************************************************************************************************************************/ /*! no static exports found */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony import */ var _HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_invinbg_image_cropper_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib!../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--12-1!../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./invinbg-image-cropper.vue?vue&type=script&lang=js& */ 427); /* harmony import */ var _HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_invinbg_image_cropper_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_invinbg_image_cropper_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__); /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_invinbg_image_cropper_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_invinbg_image_cropper_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__)); /* harmony default export */ __webpack_exports__["default"] = (_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_invinbg_image_cropper_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default.a); /***/ }), /***/ 427: /*!*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--12-1!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!D:/meloinfo/sugarpark-mini-program/components/invinbg-image-cropper/invinbg-image-cropper.vue?vue&type=script&lang=js& ***! \*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { "use strict"; /* WEBPACK VAR INJECTION */(function(uni) {Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0; // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // var _default = { name: 'image-cropper', props: { cropWidth: { type: Number, default: 200 }, cropHeight: { type: Number, default: 200 }, cropFixed: { type: Boolean, default: false }, src: { type: String }, showResetBtn: { type: Boolean, default: true }, showRotateBtn: { type: Boolean, default: true } }, data: function data() { var sysInfo = uni.getSystemInfoSync(); var pixelRatio = sysInfo.pixelRatio; return { show: false, scale: 1, rotate: 0, cropW: 0, cropH: 0, cropOldW: 0, cropOldH: 0, sysInfo: sysInfo, pixelRatio: pixelRatio, imageRealWidth: 0, imageRealHeight: 0, cropOffsertX: 0, cropOffsertY: 0, startX: 0, startY: 0, // 裁剪框与边界间距 border: 5, x: 0, y: 0, startL: 0, oldScale: 1 }; }, watch: { src: function src(val) { if (val.length > 0) { this.init(); } }, show: function show(val) { if (!val) { this.src = ''; } } }, computed: { containerTop: function containerTop() { var top = 0; return top; }, // 容器高度 containerHeight: function containerHeight() { return this.windowHeight - 48; }, // 屏幕宽度 windowWidth: function windowWidth() { return this.sysInfo.windowWidth; }, windowHeight: function windowHeight() { return this.sysInfo.windowHeight; }, // 图片宽高比 imageRatio: function imageRatio() { if (this.imageRealHeight > 0) { return this.imageRealWidth / this.imageRealHeight; } return 0; }, // 等比缩放后的宽度 imageWidth: function imageWidth() { if (this.imageRatio >= 1) { return this.windowWidth; } return this.windowWidth * this.imageRatio; }, // 等比缩放后的高度 imageHeight: function imageHeight() { if (this.imageRatio >= 1) { return this.windowWidth / this.imageRatio; } return this.windowWidth; } }, methods: { rotateHandler: function rotateHandler() { if (this.rotate == 3) { this.rotate = 0; } else { ++this.rotate; } }, init: function init() { this.rotate = 0; this.scale = 1; this.cropW = this.cropWidth; this.cropH = this.cropHeight; uni.showLoading({ title: '图片加载中...' }); this.loadImage(this.src).then(function (e) { uni.hideLoading(); }).catch(function (e) { uni.hideLoading(); uni.showModal({ title: '标题', content: '图片加载失败' }); }); }, loadImage: function loadImage(src) { var _this = this; return new Promise(function (resolve, reject) { uni.getImageInfo({ src: src, success: function success(res) { _this.imageRealWidth = res.width; _this.imageRealHeight = res.height; _this.cropOffsertX = _this.windowWidth / 2 - _this.cropW / 2; _this.cropOffsertY = _this.windowHeight / 2 - _this.cropH / 2; _this.show = true; _this.$nextTick(function () { _this.x = _this.windowWidth / 2 - _this.imageWidth / 2; _this.y = _this.containerHeight / 2 - _this.imageHeight / 2; }); resolve(res); }, fail: function fail(e) { _this.show = false; reject(e); } }); }); }, cancel: function cancel() { this.show = false; this.$emit('cancel'); }, confirm: function confirm(event) { uni.showLoading({ title: '裁剪中...' }); var _this = this; var ctx = uni.createCanvasContext('myCanvas', _this); var pixelRatio = _this.pixelRatio; var imgage = _this.src; var imgW = _this.imageWidth * _this.scale; var imgH = _this.imageHeight * _this.scale; var rotate = _this.rotate; var dx = _this.cropOffsertX - _this.x - (_this.imageWidth - imgW) / 2; var dy = _this.cropOffsertY - _this.y - (_this.imageHeight - imgH) / 2; ctx.setFillStyle('white'); ctx.fillRect(0, 0, imgW, imgH); ctx.save(); ctx.rotate(rotate * 90 * Math.PI / 180); switch (rotate) { case 1: dx += (imgH - imgW) / 2; dy -= (imgH - imgW) / 2; ctx.drawImage(imgage, -dy, dx, imgW, -imgH); break; case 2: ctx.drawImage(imgage, dx, dy, -imgW, -imgH); break; case 3: dx += (imgH - imgW) / 2; dy -= (imgH - imgW) / 2; ctx.drawImage(imgage, dy, -dx, -imgW, imgH); break; default: ctx.drawImage(imgage, -dx, -dy, imgW, imgH); break;} ctx.restore(); ctx.draw(false, function () { uni.canvasToTempFilePath({ canvasId: 'myCanvas', destWidth: _this.cropW * pixelRatio, destHeight: _this.cropH * pixelRatio, success: function success(res) { uni.hideLoading(); event.detail.tempFilePath = res.tempFilePath; _this.show = false; _this.$emit('confirm', event); }, fail: function fail(e) { uni.hideLoading(); uni.showModal({ title: '提示', content: '裁剪失败' }); } }, _this); }); }, imgTouchStart: function imgTouchStart(e) { if (e.touches.length == 2) { this.oldScale = this.scale; this.scaling = true; var x = e.touches[0].pageX - e.touches[1].pageX; var y = e.touches[0].pageY - e.touches[1].pageY; var hypotenuse = Math.sqrt( Math.pow(x, 2) + Math.pow(y, 2)); this.startL = Math.max(x, y, hypotenuse); uni.showModal({ content: this.startL }); } else { this.startX = e.touches[0].pageX - this.x; this.startY = e.touches[0].pageY - this.y; } }, imgMoveing: function imgMoveing(e) { if (this.scaling) { var scale = this.oldScale; var x = e.touches[0].pageX - e.touches[1].pageX; var y = e.touches[0].pageY - e.touches[1].pageY; var hypotenuse = Math.sqrt( Math.pow(x, 2) + Math.pow(y, 2)); var newL = Math.max(x, y, hypotenuse); var cha = newL - this.startL; // 根据图片本身大小 决定每次改变大小的系数, 图片越大系数越小 // 1px - 0.2 var coe = 1; coe = coe / this.imageWidth > coe / this.imageHeight ? coe / this.imageHeight : coe / this.imageWidth; coe = coe > 0.1 ? 0.1 : coe; var num = coe * cha; if (cha > 0) { scale += Math.abs(num); } else if (cha < 0) { scale > Math.abs(num) ? scale -= Math.abs(num) : scale; } this.scale = scale; } else { var moveX = e.touches[0].pageX - this.startX; var moveY = e.touches[0].pageY - this.startY; this.x = moveX; this.y = moveY; } }, imgMoveEnd: function imgMoveEnd() {var _this2 = this; setTimeout(function () { _this2.scaling = false; }, 100); }, touchStart: function touchStart(e) { this.startX = e.touches[0].pageX - this.cropOffsertX; this.startY = e.touches[0].pageY - this.cropOffsertY; this.cropOldW = this.cropW; this.cropOldH = this.cropH; }, cropMoveing: function cropMoveing(e) { var moveX = this._cropX(e.touches[0].pageX - this.startX); var moveY = this._cropY(e.touches[0].pageY - this.startY); this.cropOffsertX = moveX; this.cropOffsertY = moveY; }, dragMove: function dragMove(e, type) { if (this.cropFixed) { return false; } var moveX = e.touches[0].pageX - this.startX; var moveY = e.touches[0].pageY - this.startY; switch (type) { case 'left-top': this._cropMoveLeft(moveX); this._cropMoveTop(moveY); break; case 'middle-top': this._cropMoveTop(moveY); break; case 'right-top': this._cropMoveTop(moveY); this._cropMoveRight(moveX); break; case 'middle-right': this._cropMoveRight(moveX); break; case 'right-bottom': this._cropMoveRight(moveX); this._cropMoveBottom(moveY); break; case 'middle-bottom': this._cropMoveBottom(moveY); break; case 'left-bottom': this._cropMoveBottom(moveY); this._cropMoveLeft(moveX); break; case 'middle-left': this._cropMoveLeft(moveX); break; default: break;} }, _cropMoveTop: function _cropMoveTop(y) { var topY = this._cropY(y); this.cropH += this.cropOffsertY - topY; this.cropOffsertY = topY; }, _cropMoveRight: function _cropMoveRight(x) { if (this.cropOldW + x >= this.windowWidth - this.border) { return false; } this.cropW = this.cropOldW + (x - this.cropOffsertX); }, _cropMoveBottom: function _cropMoveBottom(y) { if (this.cropOldH + y >= this.windowHeight - this.containerTop - this.border) { return false; } this.cropH = this.cropOldH + (y - this.cropOffsertY); }, _cropMoveLeft: function _cropMoveLeft(x) { var leftX = this._cropY(x); this.cropW += this.cropOffsertX - leftX; this.cropOffsertX = leftX; }, _cropX: function _cropX(x) { if (x <= this.border) { return this.border; } if (x + this.cropW >= this.windowWidth - this.border) { return this.windowWidth - this.cropW - this.border; } return x; }, _cropY: function _cropY(y) { if (y <= this.border) { return this.border; } if (y + this.cropH >= this.windowHeight - this.containerTop - this.border) { return this.windowHeight - this.cropH - this.containerTop - this.border; } return y; } } };exports.default = _default; /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 1)["default"])) /***/ }), /***/ 428: /*!**************************************************************************************************************************************************************!*\ !*** D:/meloinfo/sugarpark-mini-program/components/invinbg-image-cropper/invinbg-image-cropper.vue?vue&type=style&index=0&id=02b3d9d8&scoped=true&lang=css& ***! \**************************************************************************************************************************************************************/ /*! no static exports found */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony import */ var _HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_invinbg_image_cropper_vue_vue_type_style_index_0_id_02b3d9d8_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--6-oneOf-1-2!../../../../HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src??ref--6-oneOf-1-3!../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./invinbg-image-cropper.vue?vue&type=style&index=0&id=02b3d9d8&scoped=true&lang=css& */ 429); /* harmony import */ var _HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_invinbg_image_cropper_vue_vue_type_style_index_0_id_02b3d9d8_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_invinbg_image_cropper_vue_vue_type_style_index_0_id_02b3d9d8_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__); /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_invinbg_image_cropper_vue_vue_type_style_index_0_id_02b3d9d8_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_invinbg_image_cropper_vue_vue_type_style_index_0_id_02b3d9d8_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__)); /* harmony default export */ __webpack_exports__["default"] = (_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_invinbg_image_cropper_vue_vue_type_style_index_0_id_02b3d9d8_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0___default.a); /***/ }), /***/ 429: /*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--6-oneOf-1-2!./node_modules/postcss-loader/src??ref--6-oneOf-1-3!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!D:/meloinfo/sugarpark-mini-program/components/invinbg-image-cropper/invinbg-image-cropper.vue?vue&type=style&index=0&id=02b3d9d8&scoped=true&lang=css& ***! \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { // extracted by mini-css-extract-plugin if(false) { var cssReload; } /***/ }) }]); //# sourceMappingURL=../../../.sourcemap/mp-weixin/components/invinbg-image-cropper/invinbg-image-cropper.js.map ;(global["webpackJsonp"] = global["webpackJsonp"] || []).push([ 'components/invinbg-image-cropper/invinbg-image-cropper-create-component', { 'components/invinbg-image-cropper/invinbg-image-cropper-create-component':(function(module, exports, __webpack_require__){ __webpack_require__('1')['createComponent'](__webpack_require__(423)) }) }, [['components/invinbg-image-cropper/invinbg-image-cropper-create-component']] ]);