From 9e2f01a223508ff3fd69713c4535a3173d2fdf3f Mon Sep 17 00:00:00 2001 From: Liuuuuuu Date: Wed, 26 Jul 2023 03:10:28 +0000 Subject: [PATCH] =?UTF-8?q?update=20Media/ImageEdit/entry/src/main/ets/vie?= =?UTF-8?q?w/ImageSelect.ets.=20=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Liuuuuuu --- .../entry/src/main/ets/view/ImageSelect.ets | 24 ++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/Media/ImageEdit/entry/src/main/ets/view/ImageSelect.ets b/Media/ImageEdit/entry/src/main/ets/view/ImageSelect.ets index 99d9df38..f34c561b 100644 --- a/Media/ImageEdit/entry/src/main/ets/view/ImageSelect.ets +++ b/Media/ImageEdit/entry/src/main/ets/view/ImageSelect.ets @@ -23,6 +23,7 @@ import { PixelMapWrapper } from '../common/bean/PixelMapWrapper'; import Log from '../utils/LoggerUtil'; import { ScreenManager } from '../viewModel/ScreenManager'; import { CropRatioType } from '../common/bean/CropType'; +import { encode } from '../utils/EncodeUtil'; const TAG = 'ImageSelect'; @@ -44,6 +45,8 @@ export struct ImageSelect { @Consume screenWidth: number; @Consume screenHeight: number; @Consume resetShow: boolean; + @Consume @Watch('listenSave') isSave: boolean; + @Consume isSaveFresh: boolean; private statusBar: number = 0; private titleHeight: number = CommonConstants.TITLE_HEIGHT; @@ -53,6 +56,25 @@ export struct ImageSelect { private stateMenuSize: number = ScreenManager.getInstance().getStatusBarHeight(); private defaultDisplay: display.Display = undefined; + listenSave() { + if (this.isSave) { + let filter = this.cropEdit.exit(); + if (filter === undefined) { + return; + } + filter.readerNew(new PixelMapWrapper(this.pixelMap, this.imageOldSize.width, this.imageOldSize.height), () => { + let temp = this.pixelMap; + this.pixelMap = undefined; + this.pixelMap = temp; + encode(this.pixelMap); + this.cropEdit.setCanvasContext(this.context); + this.updateImageInfo(); + this.isSaveFresh = !this.isSaveFresh; + }); + } + this.isSave = false; + } + aboutToAppear() { this.initImageSize(); } @@ -132,7 +154,7 @@ export struct ImageSelect { try { this.defaultDisplay = display.getDefaultDisplaySync(); this.screenWidth = px2vp(this.defaultDisplay.width); - this.screenHeight = px2vp((this.defaultDisplay.height - this.statusBar * 2) * + this.screenHeight = px2vp((this.defaultDisplay.height - this.statusBar) * CommonConstants.EDIT_SCREEN_USAGE); this.calcScale(); this.cropEdit = new ImageEditCrop(); -- Gitee