From 2f2be05b8caedd31bfd9d68110ea8c1267971f03 Mon Sep 17 00:00:00 2001
From: Tevin <tingquanren@163.com>
Date: Fri, 07 Mar 2025 12:22:37 +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