From d14f625a1b80ac06bd582d40cee566ec1c19b19c Mon Sep 17 00:00:00 2001 From: Tevin <tingquanren@163.com> Date: Mon, 03 Mar 2025 14:23:05 +0800 Subject: [PATCH] 知识库文档,请求层基类微调 --- forms/imagePicker/CImageCompressor.vue | 60 ++++++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 46 insertions(+), 14 deletions(-) diff --git a/forms/imagePicker/CImageCompressor.vue b/forms/imagePicker/CImageCompressor.vue index 01933b8..55ab730 100644 --- a/forms/imagePicker/CImageCompressor.vue +++ b/forms/imagePicker/CImageCompressor.vue @@ -64,14 +64,40 @@ src: tempPath, success: res => { const size = this._limitSize(res); - const drawSet = this._creatDrawSet(res, size); - this._drawImage(tempPath, drawSet, compress => { - this.imgBlobs.push({ - source: tempPath, - compress, + // 网页图片压缩 + if (process.env.TARO_ENV === 'h5') { + const drawSet = this._creatDrawSet(res, size); + this._drawImage(tempPath, drawSet, compress => { + this.imgBlobs.push({ + source: tempPath, + compress, + }); + callback(); }); - callback(); - }); + } + // 小程序图片压缩 + else if (process.env.TARO_ENV === 'weapp') { + Taro.compressImage({ + src: tempPath, + quality: 60, + compressedWidth: size[0], + compressHeight: size[1], + success: cps => { + this.imgBlobs.push({ + source: tempPath, + compress: cps.tempFilePath, + }); + callback(); + }, + fail: err => { + this.imgBlobs.push({ + source: tempPath, + compress: tempPath, + }); + callback(); + }, + }); + } }, }); }, @@ -93,13 +119,10 @@ _setCanvasSize(width, height) { this.cavWidth = width; this.cavHeight = height; - if (process.env.TARO_ENV === 'h5') { - $(this.$refs.canvas.$el) - .find('canvas') - .attr('width', width) - .attr('height', height); - } - // TODO: 小程序中的 canvas 重设 + $(this.$refs.canvas.$el) + .find('canvas') + .attr('width', width) + .attr('height', height); }, _creatDrawSet(res, [width, height]) { const orientation = res.orientation || 'up'; @@ -143,6 +166,15 @@ const img = (() => { if (typeof Image === 'undefined') { console.log(this.$refs.canvas); + console.log($('canvas[canvas-id=' + this.cavId + ']')); + + const query = Taro.createSelectorQuery(); + query + .select('canvas[canvas-id=' + this.cavId + ']') + .boundingClientRect() + .exec(res => { + console.log(res); + }); return this.$refs.canvas.createImage(); } else { return new Image(); -- Gitblit v1.9.1