You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
575 lines
39 KiB
575 lines
39 KiB
(global["webpackJsonp"] = global["webpackJsonp"] || []).push([["components/invinbg-image-cropper/invinbg-image-cropper"],{
|
|
|
|
/***/ 2591:
|
|
/*!*******************************************************************************************************************************************************!*\
|
|
!*** C:/Users/Administrator/Desktop/uniapp/uniapp前端/weliam-smartcity-smartcity-app-master/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& */ 2592);
|
|
/* 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& */ 2594);
|
|
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _invinbg_image_cropper_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (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& */ 2596);
|
|
/* 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 */ 40);
|
|
|
|
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);
|
|
|
|
/***/ }),
|
|
|
|
/***/ 2592:
|
|
/*!**************************************************************************************************************************************************************************************************!*\
|
|
!*** C:/Users/Administrator/Desktop/uniapp/uniapp前端/weliam-smartcity-smartcity-app-master/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& */ 2593);
|
|
/* 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"]; });
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
|
/***/ 2593:
|
|
/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
|
|
!*** ./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!C:/Users/Administrator/Desktop/uniapp/uniapp前端/weliam-smartcity-smartcity-app-master/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
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
|
/***/ 2594:
|
|
/*!********************************************************************************************************************************************************************************!*\
|
|
!*** C:/Users/Administrator/Desktop/uniapp/uniapp前端/weliam-smartcity-smartcity-app-master/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& */ 2595);
|
|
/* 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(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (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);
|
|
|
|
/***/ }),
|
|
|
|
/***/ 2595:
|
|
/*!***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
|
|
!*** ./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!C:/Users/Administrator/Desktop/uniapp/uniapp前端/weliam-smartcity-smartcity-app-master/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 */ 2)["default"]))
|
|
|
|
/***/ }),
|
|
|
|
/***/ 2596:
|
|
/*!****************************************************************************************************************************************************************************************************************!*\
|
|
!*** C:/Users/Administrator/Desktop/uniapp/uniapp前端/weliam-smartcity-smartcity-app-master/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& */ 2597);
|
|
/* 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(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (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);
|
|
|
|
/***/ }),
|
|
|
|
/***/ 2597:
|
|
/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
|
|
!*** ./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!C:/Users/Administrator/Desktop/uniapp/uniapp前端/weliam-smartcity-smartcity-app-master/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__('2')['createComponent'](__webpack_require__(2591))
|
|
})
|
|
},
|
|
[['components/invinbg-image-cropper/invinbg-image-cropper-create-component']]
|
|
]);
|
|
|