| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618 |
- (global["webpackJsonp"] = global["webpackJsonp"] || []).push([["components/ksp-image-cutter/ksp-image-cutter"],{
- /***/ 1061:
- /*!******************************************************************************!*\
- !*** E:/project/bigdata_WX/components/ksp-image-cutter/ksp-image-cutter.vue ***!
- \******************************************************************************/
- /*! no static exports found */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _ksp_image_cutter_vue_vue_type_template_id_4e360878_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ksp-image-cutter.vue?vue&type=template&id=4e360878&scoped=true& */ 1062);
- /* harmony import */ var _ksp_image_cutter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ksp-image-cutter.vue?vue&type=script&lang=js& */ 1064);
- /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _ksp_image_cutter_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 _ksp_image_cutter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
- /* harmony import */ var _ksp_image_cutter_vue_vue_type_style_index_0_id_4e360878_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./ksp-image-cutter.vue?vue&type=style&index=0&id=4e360878&scoped=true&lang=css& */ 1066);
- /* harmony import */ var _G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 32);
- var renderjs
- /* normalize component */
- var component = Object(_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
- _ksp_image_cutter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
- _ksp_image_cutter_vue_vue_type_template_id_4e360878_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"],
- _ksp_image_cutter_vue_vue_type_template_id_4e360878_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
- false,
- null,
- "4e360878",
- null,
- false,
- _ksp_image_cutter_vue_vue_type_template_id_4e360878_scoped_true___WEBPACK_IMPORTED_MODULE_0__["components"],
- renderjs
- )
- component.options.__file = "components/ksp-image-cutter/ksp-image-cutter.vue"
- /* harmony default export */ __webpack_exports__["default"] = (component.exports);
- /***/ }),
- /***/ 1062:
- /*!*************************************************************************************************************************!*\
- !*** E:/project/bigdata_WX/components/ksp-image-cutter/ksp-image-cutter.vue?vue&type=template&id=4e360878&scoped=true& ***!
- \*************************************************************************************************************************/
- /*! exports provided: render, staticRenderFns, recyclableRender, components */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_ksp_image_cutter_vue_vue_type_template_id_4e360878_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!./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--17-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!./ksp-image-cutter.vue?vue&type=template&id=4e360878&scoped=true& */ 1063);
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_ksp_image_cutter_vue_vue_type_template_id_4e360878_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_ksp_image_cutter_vue_vue_type_template_id_4e360878_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return _G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_ksp_image_cutter_vue_vue_type_template_id_4e360878_scoped_true___WEBPACK_IMPORTED_MODULE_0__["recyclableRender"]; });
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "components", function() { return _G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_ksp_image_cutter_vue_vue_type_template_id_4e360878_scoped_true___WEBPACK_IMPORTED_MODULE_0__["components"]; });
- /***/ }),
- /***/ 1063:
- /*!*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./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--17-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!E:/project/bigdata_WX/components/ksp-image-cutter/ksp-image-cutter.vue?vue&type=template&id=4e360878&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
- /***/ }),
- /***/ 1064:
- /*!*******************************************************************************************************!*\
- !*** E:/project/bigdata_WX/components/ksp-image-cutter/ksp-image-cutter.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 _G_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_ksp_image_cutter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--13-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!./ksp-image-cutter.vue?vue&type=script&lang=js& */ 1065);
- /* harmony import */ var _G_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_ksp_image_cutter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_G_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_ksp_image_cutter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__);
- /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _G_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_ksp_image_cutter_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 _G_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_ksp_image_cutter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
- /* harmony default export */ __webpack_exports__["default"] = (_G_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_ksp_image_cutter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default.a);
- /***/ }),
- /***/ 1065:
- /*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--13-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!E:/project/bigdata_WX/components/ksp-image-cutter/ksp-image-cutter.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 = {
- props: {
- url: {
- type: String,
- default: ""
- },
- fixed: {
- type: Boolean,
- default: false
- },
- width: {
- type: Number,
- default: 200
- },
- height: {
- type: Number,
- default: 200
- },
- maxWidth: {
- type: Number,
- default: 1024
- },
- maxHeight: {
- type: Number,
- default: 1024
- },
- blob: {
- type: Boolean,
- default: true
- }
- },
- data: function data() {
- return {
- mask: {
- show: false
- },
- frame: {
- left: 50,
- top: 50,
- width: this.width,
- height: this.height
- },
- image: {
- left: 20,
- top: 20,
- width: 300,
- height: 400
- },
- real: {
- width: 100,
- height: 100
- },
- target: {
- width: this.width,
- height: this.height
- },
- touches: [],
- type: "",
- start: {
- frame: {
- left: 0,
- top: 0,
- width: 0,
- height: 0
- },
- image: {
- left: 0,
- top: 0,
- width: 0,
- height: 0
- }
- },
- timeoutId: -1,
- context: null
- };
- },
- mounted: function mounted() {
- this.context = uni.createCanvasContext("canvas", this);
- this.targetContext = uni.createCanvasContext("target", this);
- },
- methods: {
- imageLoad: function imageLoad(ev) {
- var _this = this;
- this.mask.show = true;
- this.real.width = ev.detail.width;
- this.real.height = ev.detail.height;
- this.image.width = ev.detail.width;
- this.image.height = ev.detail.height;
- this.frame.width = this.width;
- this.frame.height = this.height;
- if (!this.fixed) {
- this.frame.width = this.image.width;
- this.frame.height = this.image.height;
- }
- var query = uni.createSelectorQuery().in(this);
- query.select(".body").boundingClientRect(function (data) {
- var bw = data.width;
- var bh = data.height;
- var fw = _this.frame.width;
- var fh = _this.frame.height;
- var tw = bw * 0.8;
- var th = bh * 0.8;
- var sx = tw / fw;
- var sy = th / fh;
- var scale = sx;
- if (sx < sy) {
- scale = sy;
- }
- tw = fw * scale;
- th = fh * scale;
- var tx = (bw - tw) / 2;
- var ty = (bh - th) / 2;
- _this.frame.width = tw;
- _this.frame.height = th;
- _this.frame.left = tx;
- _this.frame.top = ty;
- var iw = _this.image.width;
- var ih = _this.image.height;
- sx = tw / iw;
- sy = th / ih;
- scale = sx;
- if (sx < sy) {
- scale = sy;
- }
- _this.image.width = iw * scale;
- _this.image.height = ih * scale;
- _this.image.left = (bw - _this.image.width) / 2;
- _this.image.top = (bh - _this.image.height) / 2;
- setTimeout(function () {
- _this.trimImage();
- }, 100);
- }).exec();
- },
- touchHandle: function touchHandle() {},
- touchStart: function touchStart(ev, type) {
- this.stopTime();
- this.mask.show = false;
- if (this.touches.length == 0) {
- this.type = type;
- this.start.frame.left = this.frame.left;
- this.start.frame.top = this.frame.top;
- this.start.frame.width = this.frame.width;
- this.start.frame.height = this.frame.height;
- this.start.image.left = this.image.left;
- this.start.image.top = this.image.top;
- this.start.image.width = this.image.width;
- this.start.image.height = this.image.height;
- }
- var touches = ev.changedTouches;
- for (var i = 0; i < touches.length; i++) {
- var touch = touches[i];
- // this.touches[touch.identifier] = touch;
- this.touches.push(touch);
- }
- },
- touchMove: function touchMove(ev) {
- this.stopTime();
- ev.preventDefault();
- var touches = ev.touches;
- if (this.touches.length == 1) {
- if (this.type == "plank" || this.type == "frame" || this.fixed) {
- this.moveImage(this.touches[0], touches[0]);
- } else {
- this.scaleFrame(this.touches[0], touches[0], this.type);
- }
- } else if (this.touches.length == 2 && touches.length == 2) {
- var ta = this.touches[0];
- var tb = this.touches[1];
- var tc = touches[0];
- var td = touches[1];
- if (ta.identifier != tc.identifier) {
- var temp = tc;
- tc = td;
- td = temp;
- }
- this.scaleImage(ta, tb, tc, td);
- }
- },
- touchEnd: function touchEnd(ev) {
- this.type = "";
- this.touches = [];
- this.startTime();
- },
- touchCancel: function touchCancel(ev) {
- this.type = "";
- this.touches = [];
- this.startTime();
- },
- startTime: function startTime() {
- var _this2 = this;
- this.stopTime();
- this.timeoutId = setTimeout(function () {
- _this2.trimImage();
- }, 800);
- },
- stopTime: function stopTime() {
- if (this.timeoutId >= 0) {
- clearTimeout(this.timeoutId);
- this.timeoutId = -1;
- }
- },
- trimImage: function trimImage() {
- var _this3 = this;
- this.mask.show = true;
- var query = uni.createSelectorQuery().in(this);
- query.select(".body").boundingClientRect(function (data) {
- var bw = data.width;
- var bh = data.height;
- var fw = _this3.frame.width;
- var fh = _this3.frame.height;
- var tw = bw * 0.8;
- var th = bh * 0.8;
- var sx = tw / fw;
- var sy = th / fh;
- var scale = sx;
- if (sx > sy) {
- scale = sy;
- }
- tw = fw * scale;
- th = fh * scale;
- var tx = (bw - tw) / 2;
- var ty = (bh - th) / 2;
- var ax = tx - _this3.frame.left + (_this3.frame.left - _this3.image.left) * (1 - scale);
- var ay = ty - _this3.frame.top + (_this3.frame.top - _this3.image.top) * (1 - scale);
- _this3.frame.width = tw;
- _this3.frame.height = th;
- _this3.frame.left = tx;
- _this3.frame.top = ty;
- _this3.image.width *= scale;
- _this3.image.height *= scale;
- _this3.image.left += ax;
- _this3.image.top += ay;
- }).exec();
- setTimeout(function () {
- var scale = _this3.image.width / _this3.real.width;
- var x = (_this3.frame.left - _this3.image.left) / scale;
- var y = (_this3.frame.top - _this3.image.top) / scale;
- var width = _this3.frame.width / scale;
- var height = _this3.frame.height / scale;
- _this3.context.drawImage(_this3.url, x, y, width, height, 0, 0, _this3.frame.width, _this3.frame.height);
- _this3.context.draw(false);
- }, 100);
- },
- moveImage: function moveImage(ta, tb) {
- var ax = tb.clientX - ta.clientX;
- var ay = tb.clientY - ta.clientY;
- this.image.left = this.start.image.left + ax;
- this.image.top = this.start.image.top + ay;
- if (this.image.left > this.frame.left) {
- this.image.left = this.frame.left;
- }
- if (this.image.top > this.frame.top) {
- this.image.top = this.frame.top;
- }
- if (this.image.left + this.image.width < this.frame.left + this.frame.width) {
- this.image.left = this.frame.left + this.frame.width - this.image.width;
- }
- if (this.image.top + this.image.height < this.frame.top + this.frame.height) {
- this.image.top = this.frame.top + this.frame.height - this.image.height;
- }
- },
- scaleImage: function scaleImage(ta, tb, tc, td) {
- var x1 = ta.clientX;
- var y1 = ta.clientY;
- var x2 = tb.clientX;
- var y2 = tb.clientY;
- var x3 = tc.clientX;
- var y3 = tc.clientY;
- var x4 = td.clientX;
- var y4 = td.clientY;
- var ol = Math.sqrt((x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2));
- var el = Math.sqrt((x3 - x4) * (x3 - x4) + (y3 - y4) * (y3 - y4));
- var ocx = (x1 + x2) / 2;
- var ocy = (y1 + y2) / 2;
- var ecx = (x3 + x4) / 2;
- var ecy = (y3 + y4) / 2;
- var ax = ecx - ocx;
- var ay = ecy - ocy;
- var scale = el / ol;
- if (this.start.image.width * scale < this.frame.width) {
- scale = this.frame.width / this.start.image.width;
- }
- if (this.start.image.height * scale < this.frame.height) {
- scale = this.frame.height / this.start.image.height;
- }
- if (this.start.image.width * scale < this.frame.width) {
- scale = this.frame.width / this.start.image.width;
- }
- this.image.left = this.start.image.left + ax - (ocx - this.start.image.left) * (scale - 1);
- this.image.top = this.start.image.top + ay - (ocy - this.start.image.top) * (scale - 1);
- this.image.width = this.start.image.width * scale;
- this.image.height = this.start.image.height * scale;
- if (this.image.left > this.frame.left) {
- this.image.left = this.frame.left;
- }
- if (this.image.top > this.frame.top) {
- this.image.top = this.frame.top;
- }
- if (this.image.left + this.image.width < this.frame.left + this.frame.width) {
- this.image.left = this.frame.left + this.frame.width - this.image.width;
- }
- if (this.image.top + this.image.height < this.frame.top + this.frame.height) {
- this.image.top = this.frame.top + this.frame.height - this.image.height;
- }
- },
- scaleFrame: function scaleFrame(ta, tb, type) {
- var ax = tb.clientX - ta.clientX;
- var ay = tb.clientY - ta.clientY;
- var x1 = this.start.frame.left;
- var y1 = this.start.frame.top;
- var x2 = this.start.frame.left + this.start.frame.width;
- var y2 = this.start.frame.top + this.start.frame.height;
- if (type == "left") {
- x1 += ax;
- } else if (type == "right") {
- x2 += ax;
- } else if (type == "top") {
- y1 += ay;
- } else if (type == "bottom") {
- y2 += ay;
- } else if (type == "left-top") {
- x1 += ax;
- y1 += ay;
- } else if (type == "left-bottom") {
- x1 += ax;
- y2 += ay;
- } else if (type == "right-top") {
- x2 += ax;
- y1 += ay;
- } else if (type == "right-bottom") {
- x2 += ax;
- y2 += ay;
- }
- if (x1 < this.image.left) {
- x1 = this.image.left;
- }
- if (y1 < this.image.top) {
- y1 = this.image.top;
- }
- if (x2 > this.image.left + this.image.width) {
- x2 = this.image.left + this.image.width;
- }
- if (y2 > this.image.top + this.image.height) {
- y2 = this.image.top + this.image.height;
- }
- this.frame.left = x1;
- this.frame.top = y1;
- this.frame.width = x2 - x1;
- this.frame.height = y2 - y1;
- },
- parseBlob: function parseBlob(base64) {
- var arr = base64.split(',');
- var mime = arr[0].match(/:(.*?);/)[1];
- var bstr = atob(arr[1]);
- var n = bstr.length;
- var u8arr = new Uint8Array(n);
- for (var i = 0; i < n; i++) {
- u8arr[i] = bstr.charCodeAt(i);
- }
- var url = URL || webkitURL;
- return url.createObjectURL(new Blob([u8arr], {
- type: mime
- }));
- },
- onok: function onok() {
- var _this4 = this;
- var scale = this.image.width / this.real.width;
- var x = (this.frame.left - this.image.left) / scale;
- var y = (this.frame.top - this.image.top) / scale;
- var width = this.frame.width / scale;
- var height = this.frame.height / scale;
- var tw = width;
- var th = height;
- if (this.fixed) {
- tw = this.width / 2;
- th = this.height / 2;
- } else {
- if (tw > this.maxWidth / 2) {
- var sc = this.maxWidth / 2 / tw;
- tw = tw * sc;
- th = th * sc;
- }
- if (th > this.maxHeight / 2) {
- var sc = this.maxHeight / 2 / th;
- th = th * sc;
- tw = tw * sc;
- }
- }
- this.target.width = tw;
- this.target.height = th;
- uni.showLoading({
- title: "正在裁剪"
- });
- setTimeout(function () {
- _this4.targetContext.drawImage(_this4.url, x, y, width, height, 0, 0, tw, th);
- _this4.targetContext.draw(false, function () {
- uni.canvasToTempFilePath({
- canvasId: "target",
- success: function success(res) {
- var path = res.tempFilePath;
- _this4.$emit("ok", {
- path: path
- });
- },
- fail: function fail(ev) {
- console.log(ev);
- },
- complete: function complete() {
- uni.hideLoading();
- }
- }, _this4);
- });
- }, 100);
- },
- oncancle: function oncancle() {
- this.$emit("cancel");
- }
- }
- };
- exports.default = _default;
- /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))
- /***/ }),
- /***/ 1066:
- /*!***************************************************************************************************************************************!*\
- !*** E:/project/bigdata_WX/components/ksp-image-cutter/ksp-image-cutter.vue?vue&type=style&index=0&id=4e360878&scoped=true&lang=css& ***!
- \***************************************************************************************************************************************/
- /*! no static exports found */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony import */ var _G_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_G_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_G_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_ksp_image_cutter_vue_vue_type_style_index_0_id_4e360878_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!./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!./ksp-image-cutter.vue?vue&type=style&index=0&id=4e360878&scoped=true&lang=css& */ 1067);
- /* harmony import */ var _G_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_G_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_G_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_ksp_image_cutter_vue_vue_type_style_index_0_id_4e360878_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_G_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_G_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_G_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_ksp_image_cutter_vue_vue_type_style_index_0_id_4e360878_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__);
- /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _G_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_G_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_G_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_ksp_image_cutter_vue_vue_type_style_index_0_id_4e360878_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 _G_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_G_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_G_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_ksp_image_cutter_vue_vue_type_style_index_0_id_4e360878_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
- /* harmony default export */ __webpack_exports__["default"] = (_G_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_G_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_G_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_ksp_image_cutter_vue_vue_type_style_index_0_id_4e360878_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0___default.a);
- /***/ }),
- /***/ 1067:
- /*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
- !*** ./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!E:/project/bigdata_WX/components/ksp-image-cutter/ksp-image-cutter.vue?vue&type=style&index=0&id=4e360878&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/ksp-image-cutter/ksp-image-cutter.js.map
- ;(global["webpackJsonp"] = global["webpackJsonp"] || []).push([
- 'components/ksp-image-cutter/ksp-image-cutter-create-component',
- {
- 'components/ksp-image-cutter/ksp-image-cutter-create-component':(function(module, exports, __webpack_require__){
- __webpack_require__('2')['createComponent'](__webpack_require__(1061))
- })
- },
- [['components/ksp-image-cutter/ksp-image-cutter-create-component']]
- ]);
|