From cc73bef19d5d5f68826ae834270f1432a1a3d4f7 Mon Sep 17 00:00:00 2001 From: pixelmaxQM Date: Sun, 22 Dec 2024 00:12:04 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E8=87=AA=E5=8A=A8=E5=8C=96=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E5=A2=9E=E5=8A=A0=E8=A7=86=E8=A7=89=E8=AF=86=E5=88=AB?= =?UTF-8?q?=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web/src/view/systemTools/autoCode/index.vue | 29 ++++++++++++++++++--- 1 file changed, 25 insertions(+), 4 deletions(-) diff --git a/web/src/view/systemTools/autoCode/index.vue b/web/src/view/systemTools/autoCode/index.vue index 74c6540c1..83b3d68f7 100644 --- a/web/src/view/systemTools/autoCode/index.vue +++ b/web/src/view/systemTools/autoCode/index.vue @@ -19,7 +19,7 @@ type="textarea" :rows="5" :maxlength="2000" - :placeholder="`现已完全免费\n试试描述你的表,让AI帮你完成。\n此功能需要到插件市场个人中心获取自己的AI-Path,把AI-Path填入config.yaml下的autocode-->ai-path,重启项目即可使用。\n按下 Ctrl+Enter 或 Cmd+Enter 直接生成`" + :placeholder="`现已完全免费\n试试复制一张图片然后按下ctrl+v或者commend+v\n试试描述你的表,让AI帮你完成。\n此功能需要到插件市场个人中心获取自己的AI-Path,把AI-Path填入config.yaml下的autocode-->ai-path,重启项目即可使用。\n按下 Ctrl+Enter 或 Cmd+Enter 直接生成`" resize="none" @focus="handleFocus" @blur="handleBlur" @@ -45,7 +45,7 @@ - 图片 + 识图 @@ -820,11 +820,13 @@ import Sortable from 'sortablejs' const handleFocus = () => { - document.addEventListener('keydown', handleKeydown) + document.addEventListener('keydown', handleKeydown); + document.addEventListener('paste', handlePaste); } const handleBlur = () => { - document.removeEventListener('keydown', handleKeydown) + document.removeEventListener('keydown', handleKeydown); + document.removeEventListener('paste', handlePaste); } const handleKeydown = (event) => { @@ -833,6 +835,25 @@ } } + const handlePaste = (event) => { + const items = event.clipboardData.items; + for (let i = 0; i < items.length; i++) { + if (items[i].type.indexOf('image') !== -1) { + const file = items[i].getAsFile(); + const reader = new FileReader(); + reader.onload =async (e) => { + const base64String = e.target.result; + const res = await eye({ picture: base64String,command: 'eye' }) + if (res.code === 0) { + prompt.value = res.data + llmAutoFunc() + } + }; + reader.readAsDataURL(file); + } + } + }; + const getOnlyNumber = () => { let randomNumber = '' while (randomNumber.length < 16) {