From 0464c0fff1aa1eb34c5a329046502a0ee81aca32 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=9B=AE=E6=A3=83?= Date: Sun, 12 Jan 2025 11:07:19 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=9A=B8=20=E6=9F=A5=E7=9C=8B=E5=8E=9F?= =?UTF-8?q?=E5=9B=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/viewPost/tp-image.vue | 48 +++++++++++++++++++- src/components/viewPost/vp-overlay-image.vue | 26 ++++------- 2 files changed, 55 insertions(+), 19 deletions(-) diff --git a/src/components/viewPost/tp-image.vue b/src/components/viewPost/tp-image.vue index 2d01a951..d86b64f8 100644 --- a/src/components/viewPost/tp-image.vue +++ b/src/components/viewPost/tp-image.vue @@ -1,15 +1,30 @@ diff --git a/src/components/viewPost/vp-overlay-image.vue b/src/components/viewPost/vp-overlay-image.vue index ac5a189b..3d026dfd 100644 --- a/src/components/viewPost/vp-overlay-image.vue +++ b/src/components/viewPost/vp-overlay-image.vue @@ -2,7 +2,7 @@
- 图片 + 图片
@@ -13,7 +13,10 @@

格式:{{ format }}

- mdi-format-color-fill + + mdi-format-color-fill + + mdi-magnify mdi-content-copy mdi-download mdi-close @@ -26,22 +29,21 @@ import TOverlay from "@comp/app/t-overlay.vue"; import showLoading from "@comp/func/loading.js"; import showSnackbar from "@comp/func/snackbar.js"; -import { computed, onMounted, onUnmounted, ref, shallowRef } from "vue"; +import { computed, ref, shallowRef } from "vue"; import type { TpImage } from "./tp-image.vue"; -import { useAppStore } from "@/store/modules/app.js"; -import { copyToClipboard, getImageBuffer, saveCanvasImg, saveImgLocal } from "@/utils/TGShare.js"; +import { copyToClipboard, getImageBuffer, saveCanvasImg } from "@/utils/TGShare.js"; import { bytesToSize } from "@/utils/toolFunc.js"; type TpoImageProps = { image: TpImage }; -const appStore = useAppStore(); const props = defineProps(); const visible = defineModel(); +const localLink = defineModel("link"); +const showOri = defineModel("ori"); const bgMode = ref(0); // 0: transparent, 1: black, 2: white const isOriSize = ref(false); -const localCover = ref(); const buffer = shallowRef(null); const format = computed(() => { if (props.image.attributes?.ext) return props.image.attributes.ext; @@ -50,16 +52,6 @@ const format = computed(() => { return "png"; }); -onMounted(async () => { - const link = appStore.getImageUrl(props.image.insert.image); - localCover.value = await saveImgLocal(link); -}); - -onUnmounted(() => { - if (localCover.value) URL.revokeObjectURL(localCover.value); - buffer.value = null; -}); - function setBlackBg(): void { bgMode.value = (bgMode.value + 1) % 3; const bgLabelList = ["透明", "黑色", "白色"];