bianjiang 1 yıl önce
ebeveyn
işleme
a87bd5c6ba

+ 29 - 0
src/assets/icons/components/IconAi.tsx

@@ -0,0 +1,29 @@
+
+import { createIcon } from '@queenjs/icons';
+export const IconAi = createIcon(<svg viewBox="0 0 21.916 21.916">
+    <g transform="translate(-285.792 -250.411)">
+        <g transform="translate(286.492 251.111)">
+            <path stroke-linecap="round" stroke-linejoin="round" fill="none" stroke="#fff"
+                stroke-width="1.4px" d="M10.594,6H6.919A.919.919,0,0,0,6,6.92V10.6"
+                transform="translate(-6 -6)" />
+            <path stroke-linecap="round" stroke-linejoin="round" fill="none" stroke="#fff"
+                stroke-width="1.4px" d="M10.594,36.594H6.919A.919.919,0,0,1,6,35.675V32"
+                transform="translate(-6 -16.078)" />
+            <path stroke-linecap="round" stroke-linejoin="round" fill="none" stroke="#fff"
+                stroke-width="1.4px" d="M32,36.594h3.675a.919.919,0,0,0,.919-.919V32"
+                transform="translate(-16.078 -16.078)" />
+            <path stroke-linecap="round" stroke-linejoin="round" fill="none" stroke="#fff"
+                stroke-width="1.4px" d="M32,6h3.675a.919.919,0,0,1,.919.92V10.6"
+                transform="translate(-16.079 -6)" />
+        </g>
+        <g transform="translate(291.432 256.749)">
+            <path stroke-linecap="round" stroke-linejoin="round" fill="none" stroke="#fff"
+                stroke-width="1.4px" d="M4471.314,754.778l3.792-8.764,3.857,8.764"
+                transform="translate(-4471.314 -746.015)" />
+            <path fill="none" stroke="#fff" stroke-width="1.4px"
+                d="M4473.049,754.619h5.048" transform="translate(-4471.853 -748.683)" />
+            <path stroke-linecap="round" fill="none" stroke="#fff" stroke-width="1.4px"
+                d="M4486.73,745.231v8.84" transform="translate(-4476.095 -745.231)" />
+        </g>
+    </g>
+</svg>)

+ 1 - 0
src/assets/icons/index.ts

@@ -1,6 +1,7 @@
 
 export * from "./components/Icon3D";
 export * from "./components/IconAdd";
+export * from "./components/IconAi";
 export * from "./components/IconAlignC";
 export * from "./components/IconAlignL";
 export * from "./components/IconAlignR";

+ 27 - 0
src/assets/icons/svg/ai.svg

@@ -0,0 +1,27 @@
+<svg viewBox="0 0 21.916 21.916">
+    <g transform="translate(-285.792 -250.411)">
+        <g transform="translate(286.492 251.111)">
+            <path stroke-linecap="round" stroke-linejoin="round" fill="none" stroke="#fff"
+                stroke-width="1.4px" d="M10.594,6H6.919A.919.919,0,0,0,6,6.92V10.6"
+                transform="translate(-6 -6)" />
+            <path stroke-linecap="round" stroke-linejoin="round" fill="none" stroke="#fff"
+                stroke-width="1.4px" d="M10.594,36.594H6.919A.919.919,0,0,1,6,35.675V32"
+                transform="translate(-6 -16.078)" />
+            <path stroke-linecap="round" stroke-linejoin="round" fill="none" stroke="#fff"
+                stroke-width="1.4px" d="M32,36.594h3.675a.919.919,0,0,0,.919-.919V32"
+                transform="translate(-16.078 -16.078)" />
+            <path stroke-linecap="round" stroke-linejoin="round" fill="none" stroke="#fff"
+                stroke-width="1.4px" d="M32,6h3.675a.919.919,0,0,1,.919.92V10.6"
+                transform="translate(-16.079 -6)" />
+        </g>
+        <g transform="translate(291.432 256.749)">
+            <path stroke-linecap="round" stroke-linejoin="round" fill="none" stroke="#fff"
+                stroke-width="1.4px" d="M4471.314,754.778l3.792-8.764,3.857,8.764"
+                transform="translate(-4471.314 -746.015)" />
+            <path fill="none" stroke="#fff" stroke-width="1.4px"
+                d="M4473.049,754.619h5.048" transform="translate(-4471.853 -748.683)" />
+            <path stroke-linecap="round" fill="none" stroke="#fff" stroke-width="1.4px"
+                d="M4486.73,745.231v8.84" transform="translate(-4476.095 -745.231)" />
+        </g>
+    </g>
+</svg>

+ 5 - 0
src/modules/editor/components/TipIcons/index.ts

@@ -8,6 +8,7 @@ import {
   IconLayerDown,
   IconLayerUp,
   IconQueen,
+  IconAi,
 } from "@/assets/icons";
 import {
   IconCamera,
@@ -33,6 +34,10 @@ export const TipIcons = {
     icons: [IconCamera],
     tips: ["截屏并保存封面"],
   }),
+  AiText: createTipIcon({
+    icons: [IconAi],
+    tips: ["Ai文案"],
+  }),
   Align: createTipIcon({
     icons: [IconAlignL, IconAlignC, IconAlignR],
     tips: ["左对齐", "居中", "右对齐"],

+ 7 - 1
src/modules/editor/components/Viewport/Toolbar/index.tsx

@@ -23,7 +23,13 @@ export default defineUI({
             onClick={() => history.redo()}
           />
         </div>
-        <div class="absolute top-20px right-20px z-999">
+        <div class="absolute top-20px right-20px space-x-10px z-999">
+          <TipIcons.AiText
+            class={btnCls}
+            onClick={() => {
+              console.log(1);
+            }}
+          />
           <TipIcons.Screenshot
             class={btnCls}
             onClick={() => actions.updateThumbnailByScreenshot(true)}