From bc6a51e5c7c0db0ecd5ffcc3fe8055e988ab9c20 Mon Sep 17 00:00:00 2001 From: pipipi-pikachu Date: Thu, 12 Dec 2024 22:23:07 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E7=BA=BF=E6=9D=A1=E3=80=81=E8=BE=B9?= =?UTF-8?q?=E6=A1=86=E6=A0=B7=E5=BC=8F=E9=85=8D=E7=BD=AE=E9=A1=B9=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/SelectCustom.vue | 120 ++++++++++++++++++ src/configs/lines.ts | 4 +- src/types/slides.ts | 6 +- .../ElementStylePanel/LineStylePanel.vue | 85 ++++++++----- .../ElementStylePanel/MultiStylePanel.vue | 40 ++++-- src/views/Editor/Toolbar/SlideDesignPanel.vue | 39 ++++-- .../Editor/Toolbar/common/ElementOutline.vue | 41 ++++-- src/views/Editor/Toolbar/common/SVGLine.vue | 69 ++++++++++ .../element/LineElement/LinePointMarker.vue | 5 +- 9 files changed, 338 insertions(+), 71 deletions(-) create mode 100644 src/components/SelectCustom.vue create mode 100644 src/views/Editor/Toolbar/common/SVGLine.vue diff --git a/src/components/SelectCustom.vue b/src/components/SelectCustom.vue new file mode 100644 index 00000000..cb029752 --- /dev/null +++ b/src/components/SelectCustom.vue @@ -0,0 +1,120 @@ + + + + + \ No newline at end of file diff --git a/src/configs/lines.ts b/src/configs/lines.ts index be7f1f0a..167304e4 100644 --- a/src/configs/lines.ts +++ b/src/configs/lines.ts @@ -1,9 +1,9 @@ -import type { LinePoint } from '@/types/slides' +import type { LinePoint, LineStyleType } from '@/types/slides' export interface LinePoolItem { path: string - style: 'solid' | 'dashed' + style: LineStyleType points: [LinePoint, LinePoint] isBroken?: boolean isBroken2?: boolean diff --git a/src/types/slides.ts b/src/types/slides.ts index 082b7a2f..d4dce037 100644 --- a/src/types/slides.ts +++ b/src/types/slides.ts @@ -52,6 +52,8 @@ export interface Gradient { rotate: number } +export type LineStyleType = 'solid' | 'dashed' | 'dotted' + /** * 元素阴影 * @@ -80,7 +82,7 @@ export interface PPTElementShadow { * color?: 边框颜色 */ export interface PPTElementOutline { - style?: 'dashed' | 'solid' | 'dotted' + style?: LineStyleType width?: number color?: string } @@ -390,7 +392,7 @@ export interface PPTLineElement extends Omit
线条样式:
- + + + +
终点样式:
-