yuSnip · Official Documentation
用户文档
截一张图,画一个圈,写一句话——把想法留在画面上。 yuSnip 是一款面向 Windows 的截图、标注、贴图、识别与自动化工具。单文件、免安装、双击即用;截图、标注、OCR、翻译、长截图、AI 识图六条主线彼此打通,并且能接入你自己的自动化流程。 本文按「先用起来 → 逐项深入 → 遇到问题先查这里」的顺序组织。标注为默认值的快捷键都可以在设置里重新录制;文中出现的 Ctrl+Alt+A、F3 这类键位,除非特别说明「固定键位」,否则都能改。
使用须知 本文档由 AI 整理并编写。随着软件功能活跃演进,部分内容可能存在一定滞后性,请以实际软件体验为主。
认识 yuSnip
1.1 它是什么
yuSnip 是一个常驻托盘、随叫随到的桌面效率工具。它把六件事收进同一套热键体系里:
- 截——把屏幕上的任意一块区域变成一张图;
- 画——在图上标注、圈画、打码、计数;
- 钉——把图钉在桌面上当参考;
- 读——把图里的文字提出来;
- 译——把图里的外语换成中文(或反过来);
- 连——把以上动作全部变成可以被其它软件调用的命令。
和同类工具相比,yuSnip 有三个刻意的取舍:
- 单文件优先:发布形态是一个原生编译的可执行文件,双击即用。不需要预装运行时、不需要安装程序、不写注册表垃圾(除开机自启一项外)。
- 离线优先:OCR 引擎与模型内嵌在程序里,识别全程在本机完成,不联网。翻译与 AI 识图是仅有的两项需要联网的能力,且都只在你配置并主动触发时才发请求。
- 自动化优先:所有能力都以「动作(Action)」为单位暴露,既能绑全局热键,也能命令行调用,还能被 Quicker、StreamDeck、AutoHotkey、计划任务等第三方工具驱动。
1.2 能力一览
| 能力域 | 一句话说明 | 默认入口 |
|---|---|---|
| 区域截图 | 拖框截取任意区域,窗口与界面控件可自动吸附 | Ctrl+Alt+A |
| 智能检测 | 鼠标悬停即高亮窗口 / 按钮 / 输入框,精度可切 | 设置 → 交互与行为 |
| 像素级取色 | 放大镜 + 十字准星瞄准,一键取色 | C(单键) |
| 标注 | 画笔 / 箭头 / 矩形椭圆 / 文字 / 马赛克 / 聚光灯 / 计数标号,100 步撤销 | Shift+B A R T M S C |
| 保存与输出 | 复制、另存为、快速保存;PNG 元数据;多格式剪贴板 | Ctrl+S / Ctrl+Shift+S |
| 贴图钉屏 | 置顶贴图,可锁定 / 穿透 / 缩略图 / 标注 | F3 |
| 智能抠图 | AI 离线双模型(MODNet 人像 / U²-NetP 通用主体)毫米级主体提取;品牌紫韵微晶格透明底板;透明通道剪贴板输出 | Shift+K / 贴图右键 |
| OCR | 进程内离线识别中英文,可编辑 / 排版 / 导出 | Ctrl+Alt+O |
| 翻译 | 图片→图片 / 图片→文本 / 静默剪贴板 | Ctrl+Alt+F |
| AI 识图 | 接入任意 OpenAI / Anthropic 兼容模型,流式对话 + 联网深度分析 | 截图工具栏「AI 识图」 |
| 长截图 | 四向滚动拼接,最长 28888px,自动剥离固定层 | 截图工具栏 |
| 截图历史 | 本地历史库 + 自然语言搜索 + 图片查看器 | 托盘「截图历史」 |
| 自动化 | 内置动作 + 自定义动作,全局热键与命令行双通道 | 设置 → 快捷键与动作 |
需要联网的只有翻译、AI 识图、更新检查三项;其余全部在本机完成。
1.3 三种使用形态
同一个可执行文件,可以三种方式使用:
形态一:常驻托盘(推荐日常使用)
双击启动后常驻系统托盘,随时用全局热键唤起截图,用完自动回到后台。关闭截图窗口不会退出程序。
形态二:一次性调用(脚本 / 第三方工具)
通过命令行参数直接触发某个功能。程序检测到已有实例在运行时,会把指令转发给它,然后自己退出。适合放在自动化脚本、快捷面板、StreamDeck 按钮里。
形态三:管理员模式(系统级场景)
以管理员权限运行时,全局快捷键可以在任务管理器、磁盘管理、设备管理器等系统级窗口上生效。
1.4 系统要求
| 项目 | 要求 |
|---|---|
| 操作系统 | Windows 10 版本 19041 及以上 / Windows 11 |
| 架构 | x64 |
| 运行时依赖 | 无(自包含);另有一种体积更小、需要预装 .NET 运行时的分发形态 |
| 显卡 | 无特殊要求,使用系统图形接口 |
两种分发形态功能完全一致,只是打包方式不同。
1.5 数据落点:yuSnip 在你电脑上写了什么
yuSnip 的全部持久化数据都在一个目录里(开机自启会在注册表写一项):
%APPDATA%\yuSnip\
├── settings.ini # 主设置(界面偏好、行为开关、密钥等)
├── actions.ini # 动作与全局热键定义
├── shortcuts.ini # 窗口内置快捷键的覆盖项(只存与默认不同的部分)
├── stats.ini # 本机使用统计(按天分桶,最近 90 天)
├── history\ # 截图历史(需手动开启收集)
├── ocr\ native\ # OCR 模型与原生库的释放目录(首次运行自动生成)
└── ocr_tried.txt # 贴图补识别的「已试过」清单
几条值得知道的规则:
- 历史收集默认关闭。因为收集会往配置目录写图片副本,属于额外的磁盘写入,yuSnip 不替你做决定。
- 使用统计不会随配置走。它独立成文件,不参与云同步、不随配置导出,也不会在「恢复默认设置」时被清零。
- 想彻底清干净:退出程序 → 删除
%APPDATA%\yuSnip\整个目录,不留残留。
提示:设置 → 云存储配置 → 本地配置文件 → 「打开目录」,可以直接在资源管理器里定位这个文件夹。
快速入门(约 15 分钟)
本章按「第一次使用」的顺序走一遍完整流程。每一节都能独立操作,卡住了再往下看。
2.1 第一次启动
- 双击
yuSnip.exe。 - 首次启动会释放内嵌资源(OCR 模型与原生库)到配置目录,这一步只在第一次发生,之后启动会快很多。
- 程序不会打开主窗口,而是常驻系统托盘,并在右下角弹出一条启动提示。
- 在托盘图标上单击右键,你会看到完整的功能菜单(截图、贴图、截图历史、设置……)。
找不到托盘图标? 点击任务栏右下角的「∧」展开隐藏图标区域,把 yuSnip 拖到常驻区即可。
先记住两个键(后面会反复用):
Ctrl+Alt+A→ 区域截图(与 QQ / 微信的习惯一致)Esc→ 取消当前操作
2.2 第一次截图
- 按
Ctrl+Alt+A。 - 整个屏幕被一层半透明遮罩覆盖,鼠标变成一个测量用的光标。
- 先不要点击,把鼠标移到任意一个窗口上停一下——你会看到该窗口被一圈蓝色高亮框框住。这就是智能检测。
- 移动到一个按钮、输入框或列表项上,可能出现更小的蓝色框——这是元素检测(需要检测模式为「检测元素」)。
- 在想要截取的位置按住鼠标左键拖动,拉出一个矩形。拖动过程中右上角会显示实时尺寸(如
820 × 520)。 - 松开左键,选区确定。此时:
- 选区四角与四边中点出现手柄,可继续调整大小;
- 按
Space拖鼠标可平移整个选区(尺寸不变); - 方向键可每次微移 1 像素;
- 右上角出现参数条(尺寸 / 圆角 / 描边 / 阴影)。
- 按
Enter确认,或按Esc取消。
最常用的一步到位:在选区上双击鼠标左键 = 确认并复制到剪贴板。
2.3 第一次标注
选区确定后,工具栏自动出现在选区附近。标注工具用 Shift + 字母 触发(防止单字母误触):
| 工具 | 快捷键 | 怎么用 |
|---|---|---|
| 画笔 | Shift+B |
按住左键随手画;绘制中按住 Shift 可拉出水平 / 垂直 / 45° 直线 |
| 箭头 | Shift+A |
从起点拖到终点,箭头指向终点 |
| 矩形 / 椭圆 | Shift+R |
拖出矩形或椭圆 |
| 文字 | Shift+T |
在要写的位置点一下,直接打字 |
| 马赛克 / 模糊 | Shift+M |
在要遮挡的区域上拖一块 |
| 聚光灯 | Shift+S |
拖一块,这块保持明亮、周围压暗 |
| 计数标号 | Shift+C |
点一下出一个编号,连续点自动递增 |
几条一定要知道的手感:
- 画过的地方可以继续画。工具激活时,按下鼠标永远等于「画一笔新的」。
- 想修改已画的图形:按住
Ctrl再点击它,即可选中、拖动、或用方向键微移。 - 撤销 / 重做:
Ctrl+Z/Ctrl+Y,最多 100 步。 - 一键清空全部标注:
Shift+E(橡皮擦,全清,可撤销)。 - 调粗细:在选区内滚动鼠标滚轮;调颜色:点色板上的色块。
2.4 第一次贴图
方式一:从剪贴板贴图
- 先用任意方式把一张图复制到剪贴板(例如刚才双击截图的结果)。
- 按
F3。 - 图片会以置顶小窗口的形式出现在屏幕上。
方式二:截图直接贴图
在截图过程中,随时点一下鼠标中键——注意,左键不用松手:拖框拖到一半按中键,也会立刻用当前框生成贴图并退出截图。
贴图窗口的常用操作:
| 操作 | 效果 |
|---|---|
| 鼠标滚轮 | 缩放(以指针为锚点,指针下的内容点钉住不动) |
| 拖拽窗口内部 | 移动贴图 |
| 拖拽窗口边缘 / 四角 | 按方向缩放 |
Ctrl+L |
锁定 / 解锁(锁定后不可移动缩放,边框变橙) |
Ctrl+P |
开关鼠标穿透(点击直达下方窗口,边框变绿) |
Shift+R 或 Shift+双击 |
切换缩略图模式 |
Space |
进入 / 退出标注模式 |
| 鼠标中键 | 直接关闭这张贴图 |
Esc |
关闭贴图(标注模式下先退标注) |
2.5 第一次 OCR
- 按
Ctrl+Alt+O(截图并 OCR)。 - 拖框选中要识别的文字区域,
Enter确认。 - 稍等片刻,OCR 结果窗口打开,左边是原图、右边是可编辑的文本行。
在结果窗口里你能做的事(详见第 8 章):
- 双击某一行直接改文字;
- 拖拽行首手柄调整行序,把一行拖到另一行中间可以合并;
- 切换到合并视图,全选、复制、或做批量清理(去空格、统一引号、统一标点等);
- 点「智能排版」,让 AI 把断行拼接成自然段落(需先配置 AI 模型);
- 导出 TXT / Markdown。
更轻量的用法:在「设置 → OCR与翻译」里把「OCR 结果输出方式」改成静默复制,识别结果会直接进剪贴板,只在屏幕角落弹一张轻量卡片提示,不打断手上的操作。
2.6 第一次翻译
- 在「设置 → 语言与翻译」里选择服务商(百度翻译或有道智云),填入你的 API 凭证,并点验证按钮确认有效。
- 按
Ctrl+Alt+F。 - 拖框选中要翻译的内容,
Enter。 - 原图会先作为贴图出现在屏幕上,正中显示「翻译中…」,随后原地替换为译文图片。
如果你只需要文字而不需要成品图,用「图片→文本」模式:译文会出现在一个能左右对照的浮窗或编辑窗口里,左侧原文可编辑,右侧译文可复制。
2.7 第一次 AI 识图
- 打开「设置 → AI 模型」。
- 点「新增服务商」,填入:
- 协议:
OpenAI或Anthropic(按你的服务商选); - 接口地址:你的服务商提供的兼容接口地址;
- API 密钥:你的密钥;
- 模型:可以点「拉取模型列表」自动获取,也可以手动输入模型名。
- 协议:
- 点「测试连接」,确认返回延迟与可用模型数量。
- 回到截图:框选要分析的内容,点工具栏上的「AI 识图」按钮。
- 结果以一个流式输出的对话窗口呈现,文字逐字出现;你可以直接在下方继续追问。
2.8 第一次长截图
- 用长截图入口(工具栏或动作)进入长截图模式。
- 框选要滚动捕获的区域——只框住会变化的那块,不要把固定的标题栏、任务栏框进去。
- 按提示开始滚动,yuSnip 会逐帧捕获并拼接。
- 滚动到底部后停止,拼接结果作为一张超长图输出。
关键点:先看第 11 章。长截图对滚动方式与选区选择比较敏感,用对方法成功率会高很多。
2.9 新手最常卡住的 5 个地方
| 现象 | 原因 | 解决 |
|---|---|---|
按了 Ctrl+Alt+A 没反应 |
热键被其它软件占用 | 设置 → 快捷键与动作,重新录制一个热键 |
| 单字母按了没进标注工具 | 标注工具默认是 Shift+字母 |
按 Shift+B 而不是 B |
按 F3 没贴出图 |
剪贴板里没有图片或文字 | 先复制一张图或一段文字;或开启「选中文本贴图」 |
| 贴图挡住了下面的窗口 | 贴图默认置顶 | Ctrl+P 开启鼠标穿透,点击直达下方窗口 |
| 中文输入法下快捷键失灵 | 需要特殊处理才能完全避免 | yuSnip 已内置输入法拦截机制,若仍异常请查看第 12.6 节 |
截图:从唤醒到出图
截图是 yuSnip 的主干功能,也是理解其它一切功能的基础。
3.1 四种触发方式
| 入口 | 操作 | 说明 |
|---|---|---|
| 全局热键 | Ctrl+Alt+A(默认) |
最常用;可在设置中改键或清空 |
| 系统托盘 | 右键托盘图标 → 截图 | 鼠标党友好 |
| 命令行 | 按动作名或直接执行脚本 | 见第 14 章 |
| 脚本动作 | yuSnip.screenShot(); |
用于自定义动作 |
yuSnip.screenShot(action) 支持一个可选的后续动作参数,让「截完自动干什么」也能预先指定:
action 取值 |
截完之后的动作 | 对应预设动作名 |
|---|---|---|
| (省略) | 停留在标注界面,等你操作 | — |
'Copy' |
直接复制到剪贴板 | 截图并复制 |
'Save' |
直接保存到预设目录 | 截图并保存 |
'Pin' / 'Sticker' |
直接生成贴图 | 截图并贴图 |
'Ocr' |
打开 OCR 结果窗口 | 截图并OCR(弹窗) |
'OcrToast' |
识别后静默复制到剪贴板 | 截图并OCR(仅提示) |
'Translate' |
走翻译流程(模式跟随设置) | — |
'Vision' |
直接发起 AI 识图(用默认提示词) | 截图并识图(默认) |
'VisionPrompt' |
先弹出提问窗口再识图 | 截图并直接识图(提问) |
'MattingGeneral' |
截图后自动执行通用主体抠图 | 截图并抠图(通用主体) |
'MattingPortrait' |
截图后自动执行人像精细抠图 | 截图并抠图(人像精细) |
还有一个「无界面」的截图方式,适合脚本化场景:
yuSnip.directScreenShot(x, y, w, h, action)
它不显示遮罩,直接按你给的坐标与尺寸截取,并执行后续动作(Copy / Pin / Sticker / Save,默认 Copy)。适合「固定区域定时截图」这类需求。
3.2 选区交互
进入截图后,整个虚拟屏幕(含多显示器)被一张遮罩覆盖。交互分两个阶段。
阶段一:未起框(正在挑选)
- 鼠标移动时智能检测持续工作,命中的窗口 / 元素被蓝色框高亮,非高亮区域被压暗;
- 遮罩左下角显示一张快捷键小抄(内容随阶段切换);
- 光标位置有贯穿整屏的中心准星与十字瞄准光标(系统光标在此期间隐藏);
- 按住
Alt可显示辅助参考线。
准星与十字光标只在起框前显示。鼠标一按下开始拉框,两者立刻隐藏,避免干扰观察。
阶段二:起框后(选区已确定)
| 操作 | 效果 |
|---|---|
| 拖拽选区内部 | 移动整个选区 |
| 拖拽四角手柄 | 同时改变宽高 |
| 拖拽四边中点手柄 | 只改变该方向的尺寸 |
Space + 拖动 |
平移选区(尺寸完全不变) |
方向键 ↑↓←→ |
每次微移 1 像素 |
W / S / A / D |
移动鼠标光标 1 像素(会照常触发元素悬停检测,用于精细定位) |
| 鼠标滚轮(无工具激活) | 以选区中心为基准扩缩选区,一格四边各 1 像素(到 4 像素下限即停) |
| 鼠标滚轮(有工具激活) | 调节当前工具的粗细 |
方向键的两种语义:默认步进取选区框;如果你
Ctrl点中过某个标注图元,方向键改为步进那个图元,选区框不动。两者互斥,不会互相干扰。一段连续步进算一条撤销:用方向键连续移动 10 像素后按
Ctrl+Z,一次就回到整段步进之前,而不是退 10 次。
3.3 智能检测:让软件替你找准边界
智能检测的目标是:你不需要像素级对齐,软件替你找到边界。
3.3.1 四种检测模式
在「设置 → 交互与行为 → 自动检测模式」中切换:
| 模式 | 行为 | 适用场景 |
|---|---|---|
| 不检测 | 完全不识别,纯手动拖框 | 截取不规则 / 跨元素区域 |
| 仅窗口 | 只识别顶层窗口边界(默认) | 日常截窗口 |
| 检测元素 | 识别窗口内的按钮、输入框、列表项等界面控件 | 截界面控件、写文档配图 |
| 自动 | 由程序按当前情况自动决定精度 | 不想每次切模式 |
3.3.2 嵌套层级滚轮钻取
在「检测元素」模式下,鼠标停在一个位置通常会有多个候选:外层是窗口,往里是大区块,再往里是小按钮。
在未起框时滚动鼠标滚轮,即可在这些嵌套层级之间上下钻取——滚一下换一档吸附深度。这解决了「我要的框总是大了一圈 / 小了一圈」的问题,不用挪鼠标碰运气。
3.3.3 两个可调参数
元素检测等鼠标稳定下来再触发,避免误检与闪烁。两个参数在「设置 → 交互与行为」:
| 参数 | 含义 | 默认值 | 范围 |
|---|---|---|---|
| 触发延时 | 鼠标停下后多久开始检测元素 | 10 ms | 0 – 100 ms(步进 10) |
| 移动幅度 | 移动小于该距离不算「移动了」,不重新检测 | 20 px | 0 – 200 px(步进 10) |
- 觉得检测「太跳」→ 把移动幅度调大;
- 觉得检测「反应慢」→ 把触发延时调小;
- 在老旧机器或大型软件上,适当调大这两个值可以显著降低悬停时的负载。
3.3.4 检测不到目标时
| 情况 | 说明 |
|---|---|
| 目标应用不导出无障碍信息 | 自绘界面的应用常见。这是应用侧限制,无法绕过 |
| 目标程序以管理员运行 | 普通权限读不到它的界面元素,切换到管理员模式再试 |
| 需要更细的层级 | 未起框时滚动滚轮,在嵌套层级之间钻取 |
| 检测模式不对 | 确认为「检测元素」或「自动」 |
3.4 辅助线与瞄准系统
什么时候用:需要把选区对齐到某个现有边界(窗口边缘、文字基线、图片中线)或需要精准点对点像素瞄准的时候。
双独立设置项(2026-09-14 起):系统将「截图辅助线」(GuidelineMode)与「十字准星」(CrosshairMode)完全拆分为两个平级的独立三态设置。两者在「设置 → 交互与行为」中独立配置,Alt 键各按各自的档位生效(例如可配置为「十字准星常亮、紫色参考线按住 Alt 才出」,或仅单独开启其中一项)。
| 档位 | 行为 |
|---|---|
| 关闭 | 永远不显示(按住 Alt 也不出) |
| 开启(默认) | 仅在按住 Alt 键时点亮显示,松开即隐(物理按键状态精确追踪,Alt+Tab 切走自动解除) |
| 始终显示 | 常亮显示,无需按任何按键 |
参考线是什么:
- 起框前:参考线来自当前识别高亮的窗口或元素,给出左 / 垂直中 / 右与顶 / 水平中 / 底共 6 条紫线。如果当前没有识别到任何目标,则不画参考线,只保留中心准星与瞄准光标。
- 起框后:参考线切换为选区自身的左 / 中 / 右与上 / 中 / 下。
⚠️ 重要:起框之后不再有任何吸附。辅助线只是「看」,选区完全由你的鼠标控制。这是刻意设计——避免「明明想微调却被弹回去」。
三个视觉元素的分工(容易被混淆):
| 元素 | 形态 | 出现时机 | 作用 |
|---|---|---|---|
| 参考线 | 紫色虚线(左/中/右 + 上/中/下) | 按住 Alt 时 |
对齐参考 |
| 中心准星 | 贯穿整屏的分段自适应对比色细线 | 起框前,跟随光标 | 指示光标精确位置 |
| 十字瞄准光标 | 四段断开十字 + 中心圆点 | 起框前 | 替代系统光标,便于瞄准 |
准星会沿途采样背景亮度,在暗底上画亮线、亮底上画暗线,所以划到哪里都看得见。
3.5 放大镜与精准取色
放大镜在选区阶段实时提供像素级放大视图,同时显示当前像素的坐标与色值。
| 操作 | 效果 |
|---|---|
| 放大镜自然显示 | 光标附近的像素放大图 + RGB / HEX 色值 + 坐标,自带首帧物理光标探测兜底 |
Shift(单独按下并松开) |
在 HEX 与 RGB 显示格式之间切换 |
单键 C |
一键复制当前光标/放大镜中心色号到剪贴板并完成截图(出厂默认,可自定义) |
Shift+C |
激活序号标记工具(步骤计数标号,与单键 C 彻底解耦) |
放大镜会自动避让光标附近的工具栏与提示,不会挡住你要看的地方。
取色能拿到什么格式:复制到剪贴板的是 HEX 色号。如果需要多格式对照(RGB / HSV / HSL / HEX),可以把色值字符串复制后按 F3,yuSnip 会生成一张同时列出多种格式的色板贴图。
典型工作流:写设计规范时提取品牌色 → 启动截图对准目标按 C 取色(或按 Shift 切 RGB 后按 C)→ 剪贴板已写入精准色号;如需直观色板,按 F3 把色值字符直接贴成色卡贴图。
3.6 选区效果:圆角、描边、阴影
这三项能把「一张朴素的截图」变成「可以直接贴进文档 / PPT 的卡片」。控件都在选区右上角的参数条上,改动会在遮罩内实时预览。
这三项不在设置页重复出现——唯一入口就是参数条,因为它们是「针对这一次截图」的参数。改一下即刻记忆,下次截图沿用。
3.6.1 圆角
| 项目 | 说明 |
|---|---|
| 档位范围 | 0 – 50(0 = 直角) |
| 实际像素 | 按 1:4 映射,最大约 200 物理像素 |
| 调节方式 | 参数条滑杆,或把鼠标滚轮压在滑杆那一组上(每格 1 档) |
| 自动钳制 | 实际圆角不会超过 min(宽, 高) / 2 |
圆角用的是连续曲率超椭圆,从直边过渡到圆角时曲率是连续的,视觉上比标准圆角更「方」一些,接近现代设计规范里的 squircle。
3.6.2 描边
| 项目 | 说明 |
|---|---|
| 档位范围 | 0 – 20(物理像素,0 = 不描边) |
| 默认颜色 | 品牌紫 |
| 改颜色 | 点滑杆左边的色块,调起应用内取色器(支持透明度) |
| 调节方式 | 滑杆,或在该组上滚轮(每格 1px) |
关键特性:描边长在内容之外。
- 描边完全不遮挡选区内的画面内容,一个像素都不盖;
- 成品尺寸 = 选区尺寸 + 2 × (描边宽 + 1);
- 描边的圆角跟着内容圆角一起弯,即使选区很小也能画出完整宽度。
3.6.3 阴影
| 项目 | 说明 |
|---|---|
| 默认 | 关闭 |
| 开启方式 | 参数条上的「阴影」勾选框 |
| 边距 | 四周各加 37px 空白 |
| 与描边同开 | 边距 = 阴影边距 + 描边边距(两者相加,不是取大者) |
阴影是四周均匀的柔和悬浮感(浓度峰值约 17%),不是「往右下投影」那种。而且内容不会被缩放:开启效果后画布变大,但内容区域逐像素不缩放,只是四周多了空白,所以画质不会因为开效果下降。
3.6.4 效果作用在哪些出口
| 出口 | 圆角 | 描边 | 阴影 |
|---|---|---|---|
| 复制到剪贴板 | ✅ | ✅ | ✅ |
| 保存 / 另存为 | ✅ | ✅ | ✅ |
| 生成贴图 | ✅ | ✅ | ❌(见下) |
| OCR 识别 | ❌(用原图) | ❌ | ❌ |
| 图片翻译 | ❌(用原图) | ❌ | ❌ |
| AI 识图 | ❌(用原图) | ❌ | ❌ |
为什么贴图不套阴影:贴图窗口自带一圈窗体阴影,而且它的颜色还承担状态指示(焦点蓝 / 失焦灰 / 锁定橙 / 穿透绿)。如果再把截图阴影烘进位图,就会两层阴影叠加,既脏又会让状态指示失效。所以贴图保留圆角与描边,但不烘阴影。
一个例外:如果你在参数条里勾了「阴影」,然后直接从截图生成贴图,那一圈阴影是会被烘进位图的。这样从贴图上「复制图像」或「另存为」时,得到的就是带真实半透明阴影的成品图。
3.7 左下角的「小抄」
遮罩左下角常驻一张半透明黑色提示条,一行一个操作:左列是键位,右列是说明。它的内容按阶段整表切换:
| 阶段 | 提示条内容 |
|---|---|
| 空闲·元素检测中 | 拖框 / 单击选元素 / W A S D 微移光标 / 滚轮切嵌套层级 / 按住 Alt 辅助线 / 中键贴图 / Enter 完成 / Esc 取消 |
| 拖框过程中 | 松开左键 / 按住 Space 平移 / 中键不必松手 / Enter / Esc |
| 选区已确认 | 移动、拖手柄调大小、方向键微移、滚轮扩缩、Space 切上次工具、各标注工具、双击复制并完成、中键贴图、Ctrl+Q 翻译 / Ctrl+S 另存为 / Ctrl+Shift+S 快速保存、Enter |
| 标注工具已激活 | 含 Ctrl+Z / Ctrl+Y 撤销重做、Delete 删除图元 |
三个贴心之处:
- 键位跟随你的自定义——你在设置里改了键,小抄上的键位跟着变,不会出现「小抄骗人」。
- 智能避让——鼠标靠近它或与真实选区重叠时会平滑隐去。
- 可关闭——设置 → 交互与行为 → 「截图功能提示」→ 关闭。
3.8 确认、取消与各种出口
| 操作 | 结果 |
|---|---|
Enter |
确认选区(进入标注或按预设动作输出) |
| 在选区内双击左键 | 确认并复制到剪贴板(最常用) |
| 鼠标中键 | 把当前选区直接转为贴图并退出截图(左键不必松手) |
Ctrl+C |
复制到剪贴板 |
Ctrl+S |
另存为(弹出系统保存对话框,可选 PNG / JPEG / BMP) |
Ctrl+Shift+S |
快速保存(直接存入预设保存目录) |
Ctrl+Q |
翻译选区 |
Esc |
取消截图,什么都不产生 |
中键的两种时机都能用:拖框拖到一半、左键还按着的时候按中键,会用当前的实时框生成贴图;鼠标停在某个检测元素上、按住左键不放时按中键,会把那个元素贴成图。
双击的防误触机制:如果当时有标注工具处于激活状态,双击的第一击可能会在落笔点生成一个临时图元(画笔的一个点、一个序号、一个空文本框)。yuSnip 会自动撤销这个临时图元,确保导出的图是干净的。如果双击落在已有的文字图层上,则放行进入文本编辑模式。
3.9 上次区域记忆
yuSnip 会记住你上一次的截图区域。在 30 分钟内再次截图时,可以直接复用上次的位置与尺寸,省去重新拖框。这对「连续截取同一个表格的不同部分」「反复截同一个面板」这类场景很有用。
3.10 截图相关的已知限制
| 场景 | 表现 | 说明 |
|---|---|---|
| 全屏独占的游戏 | 可能截到黑屏 | 这类程序直接占用显示输出,常规截屏接口拿不到画面;可尝试无边框窗口模式 |
| 受保护视频(DRM) | 内容区为纯黑 | 系统级内容保护,任何截图工具都无法绕过 |
| UWP / 系统级窗口 | 元素检测可能不可用 | 无障碍树未导出或权限不足 |
| 多显示器跨屏选区 | 支持 | 虚拟屏幕合成,跨屏拖框可用 |
| 屏幕旋转 / 混合 DPI 多屏 | 支持 | 逐显示器 DPI 感知 |
标注系统
标注是 yuSnip 使用频率第二高的功能。本章的核心是让你掌握一套统一的手势模型——学会它,七种工具就能无缝切换。
4.1 工具栏结构:三级层叠系统与分裂格架构
yuSnip 截图主工具栏(2026-09-12 起全面升级)采用领先的分裂格架构(Split Button)与三级层叠系统,兼具极高空间利用率与极简交互体验:
┌───────────────────────────────────────────────────────────┐
│ 一级主工具栏:独立工具 + 分裂格工具组 + 撤销/重做 + 输出 │ ← 主栏
├───────────────────────────────────────────────────────────┤
│ 二级成员栏 (GroupBar):组内展开工具 + 右侧常驻设置齿轮 │ ← 展开组时弹出
├───────────────────────────────────────────────────────────┤
│ 三级参数栏:颜色 / 粗细 / 线型 / 强度 / 笔锋 / 字体… │ ← 激活工具时弹出
└───────────────────────────────────────────────────────────┘
- 分裂格(Split Button)精巧设计:一级栏中的工具组采用双段独立圆角小钮(左侧 28×28 工具钮 + 右侧 12×28 窄展开箭头,中间无缝衔接,整格 42 DIP 宽)。点击左侧工具本体直接激活该工具;点击右侧窄箭头专职展开/收起该组的二级成员栏。
- 同屏最多两条栏互斥铁律:主视口始终保持极致干净,主栏 + 二级成员栏 或 主栏 + 三级参数栏 两者互斥呈现,绝不会在屏幕上同时叠出三条栏遮挡截图内容。展开二级栏时自动收起参数栏;关闭二级栏后若当前工具有参数栏则自动顺畅补位复原。
- 二级成员栏与「点击即提为组头」:二级栏悬浮展示该组的所有工具。点击二级栏里的任意工具,该工具瞬间被提为一级主栏的组头(主栏图标当场替换并持久化落盘),二级栏自动优雅收起,并无缝展开该工具对应的参数栏。
- 二级栏右侧常驻设置齿轮:二级栏右端常驻极简齿轮图标,点击直接安全退出当前截图会话,无缝打开设置窗口并直达「自定义工具栏」分页。
- 选区贴近屏幕底部的向上翻转叠放:当截图选区贴近屏幕底边缘时,整叠工具栏自动向上翻转展开,各级高度与间距精确回退,小三角自动朝下指向对应按钮,杜绝栏目互相压盖。
- 截图主工具栏新增「智能抠图」按钮(
BtnMatting,快捷键 Shift+K):位于翻译按钮右侧,17.8px 精密矢量对齐,支持在设置页拖拽自由排序,点击即可一键将选区转为透明贴图并离线提取主体。
4.2 一套手势模型搞定所有工具
这是本章最重要的部分。请记住这四条规则。
规则一:工具激活时,按下 = 画新的
只要标注工具处于激活状态,在画布上按下鼠标左键,永远等于「开始画一个新的图形」,不管那个位置上有没有已经画好的东西。所以叠画自由——同一块区域可以叠画很多笔。
规则二:要编辑已有的图形,按住 Ctrl 再点
| 操作 | 效果 |
|---|---|
Ctrl + 点击图形 |
选中它,并自动切换到它对应的标注工具(点箭头就拿起箭头工具) |
Ctrl + 按住拖动 |
移动该图形的位置 |
| 已经选中后拖动手柄 | 调整大小(手柄只在选中后显示,不需要再按 Ctrl) |
| 已经选中后按方向键 | 每次微移 1 像素 |
已经选中后按 Delete / Backspace |
删除它 |
松手后仍保持选中——这样你可以选完直接按 Delete 删掉它,不用重新点一次。
什么算「选中了一次」:如果按下又松开但没有移动,那只算纯选中,不会产生一条撤销记录。只有真的移动了才记一条。
规则三:叠放顺序是固定的
多个图形重叠时,从上到下的命中优先级是:
聚光灯 > 模糊/马赛克 > 计数序号 > 箭头 > 矩形/椭圆 > 画笔
越「重」的效果排在越上面。这样当你用 Ctrl 点击重叠区域时,拿到的是视觉上最「显眼」的那个。
规则四:「当前参数」和「已画的笔迹」是分开的
- 改变参数(颜色、粗细):影响下一笔;
- 已经画好的笔迹,它的颜色和粗细是「这一笔」的属性,不会被滑杆或滚轮改写;
- 点色板是唯一的例外:它会给刚画的那一条换颜色(方便「画完发现颜色不对」时直接改)。
唯一固定键位、不进改键目录的是方向键(微移 / 步进),因为它属于通用交互而非工具。
4.3 七种标注工具
4.3.1 画笔(Shift+B)
基本用法:按住左键随手画,松开即完成一笔。
按住 Shift 拉直线:绘制过程中按住 Shift,会约束成 8 个方向之一的直线——水平、垂直、对角线。可以在起笔前或绘制中途任意时刻切换,随时切换随时生效。
单击出圆点:不拖动直接单击,画出一个实心硬边的圆斑。
参数:
| 参数 | 默认值 | 范围 | 说明 |
|---|---|---|---|
| 透明度 | 100% | 5% – 100% | 下限 5 是防止误调成全透明看不见 |
| 硬度 | 100% | 0% – 100% | 100 是实心硬边;越低软边渐变带越宽 |
| 笔锋模式 | 按速度 | 关 / 按速度 / 按压力 | 无压力设备自动回退到按速度 |
| 笔锋强度 | 35% | 0% – 100% | 越大,慢笔与快笔的粗细反差越大 |
| 输入平滑 | 40% | 0% – 100% | 越大转折越圆润、跟手延迟略增 |
| 最细比例 | 25% | 5% – 100% | 出锋后的最小笔宽占设定粗细的百分比 |
笔锋是什么:开启后,画得快的地方笔画变细、画得慢的地方饱满——模拟真实笔触的轻重变化。强度为 0 时整笔等宽。
手感上的两个保证:
- 笔迹自交的地方不会变深(和 Photoshop 的画笔行为一致);
- 拖动一条长笔迹不会重画整条,非常流畅。
4.3.2 箭头(Shift+A)
用法:从起点拖到终点,箭头指向终点。参数:颜色、粗细、线型(实线 / 虚线)。
支持的编辑:
Ctrl+ 拖动本体 → 移动整条箭头;- 选中后拖动两个端点 → 改长度和方向;
- 选中后拖动弯折点 → 把箭头改成折线(多段箭头);
- 选中后滚轮 → 整体缩放(
Shift加速)。
箭头在缩放时会保持箭头头部比例协调,不会变成「大头针」。
4.3.3 矩形 / 椭圆(Shift+R)
拖出矩形或椭圆。参数:颜色、粗细、线型(实线 / 虚线)。
直观四角圆角手柄(圆角滑块退役):绘制矩形后,四个拐角内部直观呈现圆角调节手柄,直接在画布上拖拽即可无级调整圆角弧度,并与聚光灯工具的圆角手柄完全同源、全局状态记忆;
8 向缩放手柄与 8ms 合帧优化:选中后支持四角与四边中点 8 个缩放手柄任意调整尺寸;底层引入 8ms 鼠标合帧调度机制,即使高回报率游戏鼠标快速拖拽也丝滑顺畅、毫无掉帧卡顿;按住 Ctrl 点选后用键盘 ↑ ↓ ← → 可 1px 精密步进微调,整段步进操作自动聚合为一条撤销记录。
标注态直接拖选区缩放:处于标注工具激活状态下,鼠标移至截图选区边框内外 10px 即可直接拉伸调整截图大小,无需退出当前标注工具。
典型用法:矩形圈出表单字段、标注表格单元格;椭圆圈出人脸、按钮、圆形图标;虚线矩形圈出「这一块待修改」的区域,不遮挡内容。
4.3.4 文字(Shift+T)
- 用
Shift+T激活文字工具; - 在要写的位置单击,出现输入框;
- 直接打字(中文输入法正常工作);
- 按
Enter或点击别处完成。
参数(12 项):
| 参数 | 默认值 | 说明 |
|---|---|---|
| 字号 | 24 | 支持滚轮调节;在贴图上停在文字层滚动也能改字号 |
| 字体 | Microsoft YaHei UI | 可选系统已安装字体 |
| 粗体 / 斜体 | 关 | |
| 描边 | 关 | 开启后文字带一圈轮廓,在复杂背景上更清晰 |
| 描边粗细 / 颜色 | 4 / 白 | |
| 文字颜色 | 黄 | |
| 背景 | 关 | 开启后文字带底色块 |
| 背景透明度 / 圆角 / 内距 | 100 / 4 / 4 |
文字图层的特殊操作:
- 旋转手柄:文字层选中后可以旋转(适合在斜向的图上标注);
- 双击已有文字:重新进入编辑模式;
- 删除手柄:文字层上的 × 按钮可直接删除;
Ctrl+ 点击拖动:移动文字层位置。
4.3.5 马赛克 / 模糊(Shift+M)
在要遮挡的区域上拖一块矩形,该区域被马赛克化或模糊化。
| 参数 | 说明 |
|---|---|
| 模式 | 模糊(高斯) / 马赛克(像素块) |
| 强度 | 1 – 30 档,精细可调 |
两种模式的差异:
- 高斯模糊:区域内容变模糊但保留色块轮廓,观感柔和,适合遮挡不敏感的个人信息;
- 马赛克:区域被切成方块,观感更「打码」,适合彻底阻断信息识别。
一个重要的行为:马赛克 / 模糊不会逐笔加重。连续在同一区域涂两下,不会「越涂越花」——效果始终以那张干净的底图计算。马赛克按整屏网格相位切块,所以同一张图上多次打码的块大小完全一致。
4.3.6 聚光灯(Shift+S)
拖一块区域,这块保持原亮度、其余全部压暗,用于引导视线。
| 参数 | 说明 |
|---|---|
| 形状 | 矩形 / 椭圆 |
| 圆角 | 矩形模式下可调 |
| 边框颜色 / 粗细 | 工具级统一设置 |
| 暗幕强度 | 可调(滚轮 ±5%、Shift ±10%、Ctrl ±2%) |
典型用法:截一张复杂的界面图,用聚光灯圈出「我改的就是这里」,周围压暗,读者一眼看到重点。
4.3.7 计数标号(Shift+C,专职序号工具)
在图上点一下出一个编号徽章,连续点自动递增(1、2、3……)。用于写操作步骤、标注多个问题点。
参数:徽章半径(滚轮 ±2、Shift ±8,范围 8 – 80)、颜色、字体。
一个细致的行为:如果删除了中间的某个序号(比如删掉 2),后面的序号会自动前移,保持 1..N 连续,不需要手动重排。
4.3.8 橡皮擦(Shift+E)
一键清除全部标注。
⚠️ 这是全清,不是局部擦除。它的定位是「画废了,重来」。局部删除请用「Ctrl 点选 + Delete」。好在橡皮擦本身可以撤销。
4.3.9 颜色选择器
点任意工具参数条上的色块,打开应用内取色器:预设色板、HEX 输入、RGB 输入、HSV 与透明度调节。取色器会浮现在全屏遮罩之上(不会被遮住),并且会就近停靠在你点击的色块旁边。
4.4 撤销 / 重做
| 快捷键 | 功能 |
|---|---|
Ctrl+Z |
撤销 |
Ctrl+Y |
重做 |
上限 100 步,且每一步都能精确还原到当时的状态。
「一段连续操作算一条撤销」的三种情况(能解释「为什么按一次 Ctrl+Z 退了很多」):
| 操作 | 撤销粒度 |
|---|---|
| 普通画一笔 | 一笔 = 一条 |
| 用方向键连续步进图元 | 整段连续步进 = 一条 |
| 连续用滚轮微调图元 | 整段连续微调 = 一条 |
| 纯选中(按下未移动) | 不进撤销历史 |
这个设计的用意是:你不会因为「用方向键挪了 20 下」而要按 20 次 Ctrl+Z 才能退回去。
4.5 标注态下直接拖选区缩放
这是一个容易被忽略但很实用的能力:当你已经选中某个标注工具(准备画东西),突然发现「选区框小了 / 大了」——不需要先退出工具,直接拖选区边界就行。
可拖的区域:选区边框内侧 10px + 外侧 10px 组成的一圈「带子」,加上 4 个角手柄与 4 个边中点手柄。以上区域在标注态下一律等于缩放选区(不是画东西),鼠标移上去时光标会实时变成缩放箭头。
几条明确的行为:
- 缩放期间提示胶囊会实时显示当前尺寸;
- 松手后工具栏与参数条自动归位,当前工具保持不变;
- 缩放选区不进标注撤销栈——因为这不是「标注操作」。缩小之后落到选区外的图元仍然存在、仍然可编辑,只是成品被裁掉了。
4.6 标注相关的已知限制
| 场景 | 表现 / 原因 |
|---|---|
| 贴图缩略图模式下不能标注 | 会提示先退出缩略图 |
| 删除「图形」还是「文字」 | 取决于最后一次选中,两者只有一个处于选中态 |
| 拖动图元的同时用快捷键导出 | 拿到的是起手那一刻的几何(拖动期间只改预览,松手才写文档) |
| 缩放选区不进撤销栈 | 见 4.5 节 |
| 选框外的图元 | 仍然保留在文档中可编辑,只是不出现在成品里 |
| 画笔粗细不被滚轮回灌 | 选中某条笔迹时滚轮改的是工具默认值,不改那条笔迹 |
保存、输出与剪贴板
5.1 三个出口
| 出口 | 快捷键 | 行为 | 是否套用圆角/描边/阴影 |
|---|---|---|---|
| 复制到剪贴板 | Ctrl+C 或在选区内双击 |
写入系统剪贴板 | ✅ 全部套用 |
| 另存为 | Ctrl+S |
弹出系统保存对话框,可选路径与格式 | ✅ 全部套用 |
| 快速保存 | Ctrl+Shift+S |
直接存入预设目录,按模板命名 | ✅ 全部套用 |
快速保存的命名:默认文件名为 Screenshot_{时间戳} 形式(例如 Screenshot_20260910_205230)。你可以在设置里改:
- 保存目录:默认是系统的图片 / 截图目录;
- 文件名模板:支持时间占位符(年 / 月 / 日 / 时 / 分 / 秒),可以排出自己的命名规则,例如加项目前缀、加日期分隔符。
另存为支持的格式:PNG / JPEG / BMP。
关于默认格式:yuSnip 的默认且推荐格式是 PNG。设置里虽然还保留着「图片格式」和「JPEG 质量」两个旧键,但它们已经废弃,程序始终输出 PNG(保留键只是为了兼容老配置文件)。
5.2 剪贴板:一次写入多种格式
复制到剪贴板时,yuSnip 会一次写入多种剪贴板格式,而不是只写一种。这样不管你粘贴到哪里,接收方都能拿到它能理解的最优格式:
| 格式 | 适合的接收方 |
|---|---|
| PNG | 现代编辑器、浏览器、聊天软件(保留透明通道) |
| DIB / 位图 | 传统 Windows 程序、部分老编辑器 |
| 位图对象 | 需要直接拿位图句柄的程序 |
透明通道是被保留的。所以截图带圆角时,四角是真正透明的,粘到深色背景上也好看。
5.3 PNG 元数据
保存或复制为 PNG 时,yuSnip 会写入一段文本元数据(PNG 规范允许的自定义文本块),内容包括截图时的坐标与尺寸、屏幕 DPI、时间戳。这对「事后追溯这张图是从哪来的」有帮助,而且不影响图片显示——普通看图软件会忽略它。
5.4 保存后的反馈
| 选项 | 默认 | 说明 |
|---|---|---|
| 保存后自动复制到剪贴板 | 开启 | 保存的同时也复制一份,方便立刻粘贴 |
| 保存成功显示通知 | 开启 | 右下角弹一条成功提示,点击可打开文件所在目录 |
| 保存提示音 | 关闭 | 播放系统提示音 |
贴图(钉屏)
贴图是 yuSnip 里第二常用的功能,也是最能体现细节打磨的地方。它把一张图钉在桌面上,让你边看边做事。
6.1 五种创建方式
| 方式 | 操作 |
|---|---|
| 剪贴板贴图 | 把图片或文字复制到剪贴板,按 F3 |
| 截图直接贴图 | 截图过程中点鼠标中键(左键不必松手) |
| 选中文本贴图 | 在别处选中文字后按 F3(需开启「选中文本贴图」) |
| 从截图历史贴出 | 截图历史窗口 → 选中条目 → 「贴到屏幕」 |
| 恢复上次关闭的贴图 | 执行动作 yuSnip.restoreLastSticker(); |
F3 从剪贴板取图的优先级(这解释了「为什么贴出来的图不是原图」):
图片文件(资源管理器复制的文件) > 剪贴板位图 > 文字
- 如果你是从资源管理器复制的图片文件,
F3会读取原始文件的全分辨率内容,而不是资源管理器附带渲染的那张小位图; - 如果剪贴板里没有图片,会退而处理文字;
- 文字会进一步被识别成三种特殊形态(见 6.7 节)。
支持的图片文件格式:PNG、JPG/JPEG、BMP、GIF、ICO、TIF/TIFF、WebP。超大图会自动缩放保护,不会把内存吃爆。
6.2 贴图的四种状态与阴影色语义
贴图窗口有一圈阴影,它的颜色就是状态指示器:
| 状态 | 阴影颜色 | 含义 |
|---|---|---|
| 焦点 | 蓝色 | 当前正在操作的贴图 |
| 失焦 | 灰色 | 存在但未聚焦 |
| 锁定 | 橙色 | 已锁定,不可移动缩放 |
| 穿透 | 绿色 | 鼠标穿透,点击直达下方窗口 |
这让你在桌面上堆了七八张贴图时,一眼就能分辨每张的状态。
6.3 基本操作
| 操作 | 效果 |
|---|---|
| 拖拽窗口内部 | 移动贴图 |
| 鼠标滚轮 | 缩放(以鼠标指针为锚点) |
| 拖拽窗口边缘 / 四角 | 按方向缩放 |
| 双击 | 由设置决定(见下) |
Shift + 双击 |
始终切换缩略图模式 |
| 鼠标中键 | 直接关闭 |
Esc |
关闭(标注模式下先退出标注) |
| 右键 | 打开功能菜单 |
Space |
进入 / 退出标注模式 |
双击行为可配置(设置 → 交互与行为 → 贴图):关闭贴图(默认)/ 切换缩略图 / 复制图片 / 无操作。
右键菜单项:锁定 / 穿透 / 缩略图 / 适配屏幕 / 文本编辑 / 复制图像 / 复制选中文本 / 复制文本(OCR 提取)/ 另存为 / 关闭。开启中的项图标会染成品牌紫,让你一眼看出当前开了哪些;「关闭贴图」是危险红。
6.4 锁定、穿透、缩略图
锁定(Ctrl+L):贴图不可移动、不可缩放,阴影变橙。仍然可以右键解锁,也仍然可以复制 / 另存为。用途是把一张参考图固定在某个位置,专心做别的事,不怕误拖。
穿透(Ctrl+P):开启后,贴图占用区域的鼠标点击会穿透到下方的窗口,阴影变绿。这意味着贴着一份参考图在 Word 里打字时,鼠标滑过贴图区域不会挡住正文的光标点击。
缩略图(Shift+R 或 Shift + 双击):贴图缩小成一个固定尺寸的缩略视图,适合「贴了很多图但不想占地方」的场景。
两条限制:
- 缩略图模式下不能标注(按
Space会提示先退出缩略图); - 缩略图模式下拖角是原有的视口行为,与正常模式的边缘缩放语义不同。
6.5 缩放:为什么 yuSnip 的贴图缩放不闪
很多贴图工具在滚轮缩放时会频繁改变窗口尺寸。在 Windows 上,每次改窗口尺寸都会触发一次系统的窗口拉伸合成,观感就是「缩放的时候画面在抖 / 闪」。
yuSnip 的做法:滚轮缩放时,窗口矩形保持不变,只改变内容层的几何。图片在大窗口里「变大变小」,窗口本身纹丝不动。只有当内容真的要越出窗口时,才补涨一次窗口尺寸。效果就是:连续缩放全程零闪烁,缩小时甚至完全不需要改变窗口尺寸。
几个相关的细致行为:
| 行为 | 说明 |
|---|---|
| 缩放锚点 | 鼠标指针位置。指针下的那个内容点会钉住不动,所以你可以「放大看某处细节」而不用再拖动 |
| 指针在阴影区 | 退化为就近边缘锚点 |
| 滚轮上下限 | 0.2x ~ 工作区适配上限 |
| 尺寸提示 | 拖边缩放时,图片上方浮出「宽 × 高 百分比」提示 |
| 点一下贴图 | 不会导致窗口收缩(旧版本的「每次点贴图闪一下」已修复) |
6.6 边缘拖拽缩放
鼠标靠近贴图四周的隐形热区(约 20 界面单位宽)时,光标变成缩放箭头,按住拖动即可连续缩放。
热区的判定基准是「等效贴合矩形」,不是窗口边界。这个细节很重要:刚用滚轮放大完(此时窗口比图片大)时,鼠标悬停到图片边缘立刻就能出现缩放箭头,不需要先点一下再拖。
「调整文本贴图」开关(设置 → 交互与行为 → 贴图)会改变文本贴图的拖边语义:
| 开关 | 拖左右边 / 四角 | 拖上下边 |
|---|---|---|
| 关闭(默认) | 整体缩放(字号跟着变) | 整体缩放 |
| 开启 | 只调版宽(字号不变,行数与高度由排版自然决定) | 整体缩放 |
滚轮缩放不受这个开关影响,始终是整体缩放。
文本重排时字号不变、只改每行能放多少字,所以是在真正的活体文本上重排,不是把文字烤成图片再拉伸——放大后文字依然清晰。
6.7 三种特殊贴图:文字、Markdown、颜色
按 F3 时,如果剪贴板里是文字,yuSnip 会先判断它属于哪种类型。
文字贴图:普通文本渲染成一张带样式的图片贴图。
- 自动识别代码:如果文本看起来像代码,会使用等宽字体并加一圈浅色边框,方便直接贴出来给同事看;
- 配色跟随主题:浅色主题白底深字,深色主题
#2B2B2B底浅字; - 如果剪贴板里带了 HTML 格式(比如从网页复制的带样式文本),yuSnip 会优先使用它自带的背景色,让贴出来的效果接近原样;
- 对比度兜底:程序会逐个文字片段检查亮度。如果某段文字与背景「同明同暗」,会把它翻到对面(浅底翻成深字),但只翻同侧的——红 / 蓝 / 绿这类与底色亮度不同侧的颜色会保留原色系;
- 版宽上限:初始宽度上限约为屏幕宽度的 2/3,超长行自动折行。
Markdown 贴图:如果文本被判定为 Markdown(含 **加粗**、`代码`、# 标题、- 列表、> 引用、|---| 表格等语法),会渲染成一个实时 Markdown 文档贴图,而不是一张图片。好处是标题、列表、代码块、表格都是真正排版过的;文字可以选择复制;拖边可以重排,文字始终清晰(矢量绘制,不是位图缩放)。
颜色贴图:如果文本是一个颜色值(HEX / RGB / RGBA / 命名颜色),会生成一张色板贴图:一块大色块,旁边列出这个颜色的多种格式(RGB / HSV / HSL / HEX)。
典型用法:从设计稿里取到色号 → 复制 →
F3→ 得到一张可以直接发给设计师的色卡。
6.8 贴图标注模式
进入方式:焦点贴图上按 Space,会弹出一个悬浮标注工具栏,结构与截图工具栏完全一致(工具条 + 参数条双浮层)。
支持的工具:画笔、箭头、矩形、马赛克、聚光灯、序号,外加调色与撤销。编辑手势与截图完全一致——Ctrl + 点击选中并切换工具、拖动移动、8 向手柄缩放、箭头端点 / 弯折点、聚光灯圆角手柄、文字旋转手柄、就地输入、双击再编辑、层上滚轮改字号。
贴图标注的专属快捷键:
| 快捷键 | 功能 |
|---|---|
Space |
进入 / 退出标注模式 |
Ctrl + 点击图形 |
选中并切换到对应工具,可拖动移动 |
Ctrl+Z / Ctrl+Y |
撤销 / 重做 |
Delete / Backspace |
删除当前选中的标注 |
↑↓←→ |
步进选中的图元(每次 1 像素,固定键位) |
Esc |
先退出标注(不关窗) |
标注模式下的滚轮分派(与截图同一张分派表):
| 当前状态 | 滚轮效果 |
|---|---|
| 正在画一笔 / 正在拖动图元 | 作废,只空消费(不会中途改参数,也不会退出绘制) |
| 选中了某个图元 | 微调该图元:马赛克强度 / 箭头整体缩放 / 序号半径 / 矩形描边 |
| 选中了工具(未点中图元) | 调工具默认参数:画笔与箭头的粗细、文字字号、聚光灯暗幕、序号半径 |
| 没选任何工具 | 才回到「缩放贴图」语义,此时滚轮同时自动定稿并退出标注 |
| 停在文字层上 | 改字号 |
为什么「没选工具才缩放」这么设计:早期版本只要滚滚轮就无条件退出标注并缩放贴图,而这会把正在画的那一笔丢掉。现在的分派表保证了「绘制中滚动滚轮」是无害的。
什么时候会自动「定稿」退出标注:标注期间,任何改变贴图几何或像素的操作都按「画完了」处理,会自动定稿并退出标注,包括滚轮缩放(仅「没选工具」时)、拖边改版宽、切换缩略图、适配屏幕、原地换图(翻译)、锁定、双击、点「文本可选择」、发起翻译。纯移动窗口不会定稿。
退出标注后,标注会烘焙进显示层(这是唯一的烘焙时机)。此时再按 Space 重新进入标注,会回到干净的底图,之前画的仍然可以撤销和编辑。
6.9 Alt 快速选词
不用先开「文本可选择」,直接在贴图上按住 Alt + 左键拖拽,就能像在文档里一样按字选择文字并复制。
| 操作 | 效果 |
|---|---|
Alt + 拖拽 |
按字级选区(指针变成 I 型) |
| 松手 | 选区保留,此时可按 Ctrl+C 复制 |
下一次非 Alt 按下 |
取消选区 |
| 右键 →「复制选中文本」 | 同样可复制 |
为什么按字选这么准:贴图侧会在后台静默预热 OCR,把图片里的文字按「字」级别切好,所以你按住 Alt 时是命中已经算好的字级矩形,响应很快。
几个细节:文字贴图与 Markdown 贴图同样支持(它们本来就有真实文本);这是临时模式,不改变「文本可选择」这个持久开关的状态;选中高亮是半透明的蓝紫色,不遮挡原文字。
6.10 选中文本贴图(F3 直接贴选区)
这是 yuSnip 里最有「魔法感」的功能之一。
开关:设置 → 交互与行为 → 贴图 → 「选中文本贴图」(默认关闭)。
用法:在任意程序里用鼠标选中一段文字(不用先按 Ctrl+C),然后按 F3——选中的文字会直接变成一张贴图。
它的工作方式(理解这个能解释所有异常表现):快照当前剪贴板内容 → 向当前前台窗口模拟一次 Ctrl+C → 读取剪贴板里的新内容 → 尽力还原原来的剪贴板内容 → 用抓到的文字生成贴图。
四种降级情况(都不会导致错误行为,只是退回普通 F3):
| 情况 | 表现 |
|---|---|
| 没选中任何东西 | 行为与关闭该开关时完全一致 |
| 抓到的不是文本 | 退回普通贴图流程 |
| 前台是 yuSnip 自己的窗口或桌面 | 不注入,退回普通流程 |
| 前台窗口以管理员权限运行 | 权限不够,会弹出提示建议改用管理员模式 |
必须知道的副作用:
- 会临时改写系统剪贴板。程序会尽力还原原内容,但如果你原来剪贴板里放的是位图句柄类格式,这类内容读不出字节也写不回,此时不会还原。所以:别在剪贴板里放重要内容时使用它。
- 少数自绘界面的编辑器可能不响应模拟复制(表现等同于「没选中」)。
- 调用过程有一个最长约 250 毫秒的等待,在极慢的程序上按
F3后可能有轻微延迟。
6.11 贴图存档与恢复
自动存档:每一张贴图在创建时就会生成一份存档,并在下列时机自动更新:拖动松手 / 滚轮缩放落地 / 拖边完成 / 缩略图拖角 / 锁定·穿透·阴影·缩略图等属性切换 / 退出标注。
存档里记的是完整现场:位置、尺寸、缩放比例、锁定 / 穿透 / 阴影 / 缩略状态、底图效果参数、全部矢量标注、文字层全字段、以及文本类贴图的源文本。
结果:程序意外退出、或者你关掉贴图后想再来一次,都能原貌恢复,标注仍然可编辑(不是一张烤死的图)。
两个恢复入口:
| 入口 | 说明 |
|---|---|
| 截图历史窗口 → 选中条目 → 「贴到屏幕」 | 把历史里的图重新贴出来;如果之前贴过同源贴图,会直接激活那一张而不是叠一张新的 |
| 动作「恢复上次关闭的贴图」 | yuSnip.restoreLastSticker(); — 从最近关闭的贴图开始,一张一张往回恢复 |
「恢复上次关闭的贴图」的细节:
- 不设界面按钮,只作为全局动作存在(默认没有绑定热键,需要自己绑);
- 恢复即销档,所以连按可以依次拉回「上上张、上上上张」;
- 取哪一张由设置「恢复贴图的时间顺序」决定:按关闭时间(默认)或按创建时间;
- ⚠️ 前置条件:截图历史收集必须是开启状态(因为存档外挂在历史条目上)。没开的话会提示「没有可恢复的贴图」。
6.12 显隐与批量关闭
| 动作 | 效果 |
|---|---|
Shift+F3(默认) |
显示 / 隐藏所有贴图 |
yuSnip.toggleAllStickers(); |
同上 |
yuSnip.destroyAllPin(); |
关闭所有贴图 |
隐藏 ≠ 关闭:隐藏只是让它们暂时不可见,再按一次全部回来,位置和状态都保留。
托盘菜单的「显示贴图」项不设勾选框——状态由图标表达:可见时是眼睛图标(品牌紫),已隐藏时是闭眼图标(弱灰)。
6.13 适配屏幕
右键菜单里的「适配屏幕」:把内容一步缩到刚好装进当前显示器可用工作区。
几条明确口径:
- 只封顶不封底:如果内容大到必须缩得很小才能装下,那就缩到那么小——必要时可以低于滚轮缩放的 0.2x 下限。原则是「整幅优先」;
- 已经装得下时置灰(没什么可适配的);
- 锁定的贴图、缩略图模式、Markdown 高度还未捕获完成时置灰;
- 不弹「内容超出屏幕」之类的提示,直接做。
6.14 贴图与系统界面的关系
| 行为 | 说明 |
|---|---|
不进入 Alt+Tab 列表 |
贴图窗口被标记为工具窗口,切换程序时不会看到一堆贴图 |
| 不占用任务栏 | 贴图不在任务栏显示按钮 |
| 始终置顶 | 默认在所有普通窗口之上(可用穿透模式让点击穿过它) |
| 超屏时可拖动查看 | 贴图大于屏幕时,屏外部分按住左键拖动即可看到 |
6.15 贴图相关的已知限制
| 场景 | 表现 / 原因 |
|---|---|
| 外来带阴影的图 | 位图外圈本来就有半透明阴影带时,yuSnip 会在图片背后垫一层透明棋盘格承托,两种阴影并存 |
| 外来带描边的图 | 描边宽度无从判定,一律按 0 处理,所以窗体阴影基准会偏内一圈(已知残留) |
| 文本 / Markdown 贴图从历史恢复 | 变成图片贴图(底图是当时的排版快照),不再支持拖边重排 |
| 缩略图模式 | 不能标注 |
| 超大图 | 自动缩放保护,避免内存问题 |
智能抠图(AI 离线主体提取)
告别云端上传,告别会员付费,告别隐私顾虑。 yuSnip 全新内置轻量高精的端侧离线深度学习抠图引擎,支持通用主体与人像发丝级精细分割,一键提取透明背景主体,无缝融入设计、文档排版与贴图流转。
7.1 离线双模型架构
yuSnip 针对不同场景搭载了官方原生 FP32 高精度深度学习模型,兼顾极速提取与发丝级精细度:
| 模型名称 | 适用对象 | 算法架构与精度特性 | 推理耗时(典型) |
|---|---|---|---|
| 通用主体 (U²-NetP FP32) | 商品、物体、几何图标、UI 控件、动植物、显著前景 | 双层嵌套 U-Net 深度分割架构,单文件内嵌;边缘清晰硬朗,轮廓收敛迅速,严禁 INT8 量化导致的边缘锯齿与精度塌陷 | 约 120~200 ms |
| 人像精细 (MODNet FP32) | 单人/多人肖像、证件照、复杂发丝、毛绒玩具、细小缝隙 | 轻量化端到端无 trimap 人像遮罩算法;发丝级连续亚像素 Alpha 通道,配合低切掩码截断与 SmoothStep 平滑拉伸,彻底杜绝白边与灰度脏噪点 | 约 250~450 ms |
7.2 三大触发入口与工作流
智能抠图深度融入日常截图与贴图交互,提供三条即开即用的直达路径:
| 入口 | 操作方式 | 适用场景 |
|---|---|---|
| 选区截图一键抠图 | 框选截图后,点击主工具栏「智能抠图」按钮,或按快捷键 Shift+K |
最快捷方式。截图后立即抠出主体并生成透明底板贴图 |
| 贴图右键菜单二级选择 | 在任意图片贴图上右键点击 → 选择「智能抠图」子菜单 | 随时按需切换「人像精细」或「通用主体」模型;支持一键「恢复原图」 |
| 系统托盘与全局动作 | 托盘菜单右键 → 选择「截图并抠图(通用主体)」或「截图并抠图(人像精细)」 | 一步到位。支持在「设置 → 快捷键与动作」中绑定专属全局快捷键 |
7.3 品牌紫韵微晶格与透明底板
针对传统看图工具中黑白刺目方块棋盘格带来的视觉疲劳与边界模糊问题,yuSnip 独创了品牌紫韵微晶格透明承托底板:
- 温润弱对比冷紫调:以品牌冷紫调(
#797EFE)为基底,按 4.5% 精致弱对比融入微晶格棋盘背景(#F6F4FE/#ECE8FD),视觉柔和不刺眼; - 自适应主题明暗承托:微晶格在浅色与深色桌面背景下均能清晰映衬半透明发丝与镂空边缘,前景边界一目了然;
- 仅用于交互预览,输出纯净透明:微晶格仅存在于贴图视口渲染层中;当你保存图片(PNG)或复制到剪贴板(Ctrl+C)时,微晶格自动剥离,严格输出干净无污染的 32 位 Alpha 透明通道位图。
7.4 500ms 智能去抖缓存与输出去向控制
为了在高频操作与批量截图下保持丝滑体验,系统设计了多重安全保护:
- 500ms 智能防抖去重缓存:对同一贴图或连续点击触发时,系统内置 500ms 去抖缓存机制,杜绝并发重入与无效重复模型推断,防止 CPU/GPU 负载颠簸;
- 贴图几何位置与缩放严密稳定:抠图完成后,贴图窗口严格保持原有的屏幕中心锚点、缩放倍率与交互状态,绝不发生跳动或位移;
- 三档输出去向灵活选择:在「设置 → 交互与行为 → 智能抠图」中,可根据习惯自由定制出图去向:
去向选项 交互表现 适用工作习惯 剪贴板并贴图(出厂默认) 完成主体提取后,自动生成微晶格贴图钉在屏幕上,同时将透明主体位图写入系统剪贴板 既能立即在桌面比对参考,又能秒级 Ctrl+V 粘贴进设计软件 仅贴图 仅在桌面上生成微晶格透明贴图,不覆盖剪贴板中的现有内容 桌面多图排版、对比参考 仅剪贴板 完成主体提取后立即将透明主体写入剪贴板,并自动关闭临时贴图 极速流转。截图抠图完直接去微信/PPT/PS中粘贴,屏幕不留任何贴图残留
7.5 发丝级平滑过渡与深浅背景无白边
传统轻量抠图工具在粘贴到深色背景(如黑底 PPT、暗黑主题网页)时常会残留一层难看的白色边缘(边缘灰度残余),yuSnip 采用两项关键技术从底层根治:
- Alpha 掩码低切截断(Low-cut Mask):过滤掉置信度极低的背景散碎噪点与半透明杂质,让纯背景区域 Alpha 绝对归零;
- SmoothStep 边缘平滑拉伸:在过渡区间(0.1~0.9)应用三次 Hermite 插值(SmoothStep 函数),使发丝与主体边缘的半透明过度极其细腻自然,消除断崖式硬切与边缘锯齿;
- 双通道颜色反预乘适配:导出和复制到位图时,严格遵循标准的 Alpha 通道编码规范,无论粘贴至白色背景还是纯黑底板,边缘色彩均纯净通透,杜绝任何白边与黑边。
7.6 脚本 API、CLI 命令行与自动化集成
智能抠图功能已完整开放给脚本环境与外部自动化工具:
// JavaScript / 自动化脚本接口
// 1. 对当前焦点贴图执行智能抠图(缺省参数使用当前默认模型)
yuSnip.matting();
// 2. 指定使用通用主体模型(U²-NetP)
yuSnip.matting('General');
// 3. 指定使用人像精细模型(MODNet)
yuSnip.matting('Portrait');
命令行 CLI 调用(可配置至 Quicker、Stream Deck、AutoHotkey 或自定义脚本):
# 截图并以通用主体模型抠图
yuSnip.exe -a "截图并抠图(通用主体)"
# 截图并以人像精细模型抠图
yuSnip.exe -a "截图并抠图(人像精细)"
7.7 常见问题与使用技巧
Q:如何选择使用哪一个抠图模型?
日常大部分商品图、软件 UI 控件、图标、几何图形、动物或明确物体的截图,推荐使用通用主体 (U²-NetP),边缘轮廓更坚实且速度极快;当截图内容为人像、证件照、复杂发丝、衣物边缘或毛绒玩具时,切换至人像精细 (MODNet),能保留最完整的发丝缕空。
Q:抠图后可以进行二次标注批注吗?
可以!抠出透明主体贴图后,直接按下键盘 Space 键(空格),即可在当前透明主体上进入贴图标注模式,使用画笔、箭头、文字或圆角矩形对主体进行局部圈画强调。
Q:抠图模型常驻会占用大量电脑内存吗?
不会。yuSnip 遵循严格的智能生命周期管理:启动时模型不占用内存;首次触发抠图时在 1~2 秒内快速初始化模型;连续 10 分钟未使用自动静默卸载释放模型内存,将系统资源无条件归还操作系统。
OCR 文字识别
8.1 离线识别
yuSnip 的 OCR 是进程内离线高精识别:
| 特性 | 说明 |
|---|---|
| 引擎与模型 | 内置基于 ONNX Runtime 的轻量高精深度模型(PaddleOCR / RapidOCR 检测 + 识别),支持单文件原生 DLL 预加载 |
| 联网 | 完全不需要联网,杜绝任何数据泄露风险 |
| 外部程序 | 不需要(原生 Direct API 调用,不启动任何第三方进程) |
| 模型释放与自愈 | 模型随单文件 exe 嵌入打包,首次运行释放至 %APPDATA%\yuSnip\ocr\。具备模型完整性与尺寸自检机制,遇文件残缺或损坏时自动重新提取覆盖(修复 Issue #28) |
| 语言支持 | 中英文(含中英混排、标点、代码符号与多行文本) |
| 隐私安全性 | 图片与文字全程仅留在本机内存与 GPU/CPU 缓冲区,用毕即焚 |
识别分两步:检测(找出图中所有文字块的位置)→ 识别(把每个文字块读成字符串)。
引擎的生命周期:启动时不预热,首次使用时才初始化;连续 10 分钟未使用会自动释放,下次用时自动重建。这意味着你不用 OCR 的时候它基本不占内存,而相隔很久再用时第一次会有可感知的加载延迟(属于正常现象,不是卡顿)。
8.1.1 全角度文本识别
yuSnip 能覆盖从水平到倾斜、一直到垂直的文本方向,也就是 0° 到 ±90°:
| 场景 | 是否覆盖 |
|---|---|
| 水平文本 | ✅ |
| 轻微倾斜(< 45°) | ✅ |
| 倾斜 45° ~ 90°、垂直 ±90° | ✅ |
| 整页旋转 90° 的行序 | ✅ |
| 透视畸变(拍照侧倾) | ✅ 顺带改善 |
| 文本倒置 180° | ⚠️ 默认不覆盖 |
| 每行方向都不一致的设计稿 | ⚠️ 部分覆盖 |
8.1.2 阅读顺序:先分带,再分栏
对于双栏排版(海报、杂志、并列的卡片),如果按「Y 相近就按 X 排」的简单逻辑,会把左右栏交错成「左1 左2 右1 右2 左3…」的乱序,送去翻译后译文就会落到错误的栏里。
yuSnip 的处理是:先按横向空白带分带 → 再在每条带内判断是否可分栏 → 带内逐栏排序,带间自上而下。所以海报顶部的单栏标题区不会被错误地排到整个左栏之后。
8.2 三种触发路径与两种输出方式
触发路径:
| 路径 | 操作 |
|---|---|
| 截图并 OCR | Ctrl+Alt+O(默认),或截图工具栏的 OCR 按钮 |
| 贴图文字提取 | 贴图右键 →「复制文本(提取文字)」 |
| 贴图上选词 | 在贴图上按 Alt + 拖拽(首次会触发识别) |
输出方式(设置 → OCR与翻译):
| 模式 | 行为 |
|---|---|
| 打开编辑窗口(默认) | 弹出完整的 OCR 结果窗口,可编辑、排版、导出 |
| 静默复制 | 不弹窗,结果直接写入剪贴板,同时在屏幕角落弹一张轻量提示卡片 |
静默复制模式的两个配套设置:
| 设置 | 选项 | 默认 |
|---|---|---|
| 提示窗位置 | 中上 / 中下 / 右上 / 右下 | 中下 |
| 提示窗等待时间 | 3 秒 / 5 秒 / 10 秒 | 5 秒 |
提示卡片的交互:显示识别文本的预览;点击卡片可打开完整的 OCR 编辑窗口继续处理;超时自动消失;鼠标悬停期间倒计时暂停。
典型选择:需要「看一眼就能用」用静默复制;需要「整理后再用」用编辑窗口。
8.3 OCR 结果窗口
8.3.1 结构
┌──────────────────────────────────────────────────────────────┐
│ ① 头部栏 Logo · 标题 · 引擎与真实耗时 · 关闭 │
├──────────────────────────────────────────────────────────────┤
│ ② 操作工具栏 │
│ [输出组:重新识别 / 复制 / 导出 TXT / Markdown / Word / PDF]│
│ [模式组:联动高亮 · 文本编辑] │
│ [视图组:对照查看 · 分行/合并 · 智能排版] │
├──────────────────────────────────────────────────────────────┤
│ ③ 主体:智能自适应分栏(竖向图左右分栏 / 横向图上下分栏) │
├──────────────────────────────────────────────────────────────┤
│ ④ 状态栏:总行数 · 选中行数 · 已修改统计 · 就绪指示灯 │
└──────────────────────────────────────────────────────────────┘
窗口会根据图片本身的形状自动决定分栏方式:
| 图片形状 | 分栏方式 |
|---|---|
| 竖向(高 > 宽) | 左右分栏:原图在左(约 47%),文本在右(约 53%) |
| 横向 / 方图 | 上下分栏:原图在上,高度占比按图片长宽比算,限制在 45% ~ 60% |
这就避免了「横图放在左边导致两侧都很窄」的尴尬。
8.3.2 输出组
| 按钮 | 说明 |
|---|---|
| 重新识别 | 用当前设置再跑一次 OCR(适合「刚才漏了一个区域」) |
| 复制 | 把当前文本(含你的修改)复制到剪贴板 |
| 导出 TXT | 导出为纯文本 |
| 导出 Markdown | 导出为 Markdown(智能排版后导出结构化结果) |
| 导出 Word / PDF | 会有友好提示(当前版本引导用其它方式) |
8.3.3 模式组:两个独立开关
| 开关 | 作用 |
|---|---|
| 联动高亮 | 原图与文本行双向联动:文本行被选中 / 编辑时,原图上对应的识别框高亮;鼠标在原图上划过时,对应文本行也被标记 |
| 文本编辑 | 允许直接编辑文本内容 |
默认状态下原图不绘制任何识别框——保持原图干净。只有在你开启联动 / 进入编辑状态时,识别框才会出现。
8.3.4 视图组
① 对照查看:一个胶囊按钮,用来在「初始识别结果」和「修改 / 排版后结果」之间切换查看。这样你可以随时对照「我改了什么」,也可以一键退回原始结果。没有做过修改时按钮是禁用状态。
② 分行 / 合并(两段式切换):
| 模式 | 界面形态 | 适合 |
|---|---|---|
| 分行 | 每一行是一张卡片,可拖拽排序、可合并、可单行编辑 | 逐行校对、调整语序 |
| 合并 | 一个大的文本框,全部文本合并成一个整体 | 全选复制、批量文本处理 |
分行模式下对某一行右键:复制本行 / 复制全部 / 编辑本行(F2)/ 删除行(Del)。删除行之后序号会自动重排保持连续。
③ 智能排版:一个独立的开关按钮。详见 7.5 节。
8.4 文本算子:批量清理与规范化
在合并视图里选中一段文本后,浮动工具栏会提供两组算子,也可以从「清除▾」「校对▾」这两个生长式菜单里取用。
清除组:
| 算子 | 效果 |
|---|---|
| 清除空格 | 删除所有空格 |
| 清除空白字符 | 删除换行、制表符等所有空白 |
| 清除零宽字符 | 删除零宽空格、零宽连接符等看不见但会导致检索失败的字符 |
| 清除括号内容 | 删除成对括号及其内部内容(适合去掉注释性文字) |
校对组:
| 算子 | 效果 |
|---|---|
| 数字样式还原 | 把 ⓪①②、⑴⑵ 等特殊数字还原为半角阿拉伯数字 |
| 引号风格 | 统一引号样式(直引号 / 弯引号) |
| 括号风格 | 统一括号样式(半角 / 全角) |
| 标点风格 | 统一标点样式 |
这些算子是确定性的本地处理,不调用 AI,所以结果可控、可预期。
典型组合:OCR 出来的文本经常带有零宽字符(导致搜索不到)、引号弯直混用、全半角混乱。用「清除零宽字符」+「标点风格」+「引号风格」三个算子刷一遍,文本立刻就干净了。
8.5 智能排版
目标:把 OCR 出来的「断行文本」还原成「自然段落」。
为什么需要它:OCR 是按视觉行输出的,一段完整的话会被切成很多行。直接复制到文档里,会出现大量不该有的换行、句子被截断等问题。而按固定规则处理是做不到的——不同文档的换行规则完全不同。
怎么做:把结构识别的任务交给大模型,但不让它改写你的文字。具体分工是:
| 谁做 | 做什么 |
|---|---|
| 大模型 | 只输出结构信息:每段是什么类型(标题 / 段落 / 列表 / 单行 / 代码 / 引用)、由哪些行号组成、层级是多少 |
| yuSnip | 拿到结构后,用原始识别文本去拼接段落(处理悬挂标点回移、连字符断词、中英文之间补空格) |
为什么这样设计:模型不接触正文,也不输出正文,所以它不可能改写、不可能产生幻觉内容。它只是告诉程序「第 1-5 行是一段、第 6 行是标题」。
三道校验:模型返回的结构还要经过严格检查——类型是否合法、行号是否恰好覆盖且不重复、块内是否连续、块间是否有序。任何一项不过关,都会提示失败并保持原样(不会给你一份半对半错的结果)。
前置条件:需要先在「设置 → AI 模型」里配置好一个可用的 AI 服务商。
四级润色:智能排版还提供润色档位(关闭 / 轻度 / 中度 / 深度)。每一处被修正的地方会在文本内以橙色胶囊标出(悬停加深,点击弹出气泡可逐个恢复)——所以润色是可回溯的。
Markdown 全链路:开启 Markdown 输出后,完成态直接显示 Markdown 源码,导出的是标准 Markdown(标题用 # / ## / ###、列表带序号或 - 并按深度缩进、代码用围栏、引用用 >)。
8.6 行编辑与拖拽操作
单行编辑:
| 操作 | 效果 |
|---|---|
| 双击某行 | 进入编辑 |
F2 |
编辑选中的行 |
Enter / 失焦 |
保存并退出编辑 |
Esc |
放弃编辑 |
Tab / Shift+Tab |
在行之间切换焦点 |
Del |
删除选中的行(焦点在输入框内时不劫持) |
拖拽排序与拖拽合并:
- 拖动超过一定距离(约 10 像素)才会激活拖拽,避免误触;
- 拖到目标行的顶部 25% 或底部 25% 区域 → 显示紫色指示线,松手即插入到该位置;
- 拖到目标行的中部 50% 区域 → 显示淡紫高亮 +「松开合并」徽章,松手即合并两行;
- 拖到空白处 → 取消操作。
典型的整理流程:把 OCR 拆散的句子拖到一起合并 → 把顺序错的行拖动排序 → 用文本算子清理 → 一键复制。
8.7 OCR 的常见问题与限制
| 场景 | 表现 / 解决 |
|---|---|
| 透明底贴图 | 识别前会先合成白底;若没结果再试黑底,提高成功率 |
| 手写体 / 艺术字 | 识别率明显下降(模型面向印刷体) |
| 极小字号 | 可能漏检 |
| 表格结构 | 按行输出,不还原表格结构(可用合并视图自行整理) |
| 竖排中文 | 由全角度识别覆盖 |
| 首次识别慢 | 引擎懒加载导致,属正常;连续使用会保持热态 |
| 10 分钟不用后再用 | 需要重新加载引擎,会有短暂延迟 |
| 识别结果里有孤立的「米」「a88」 | 装饰、图标、纹理被误识别。在图片翻译流程里这类行会被自动过滤,但在 OCR 结果里会保留——因为那是给你读的 |
长截图的 OCR:把一张超长图直接送进识别是行不通的(检测阶段会把长边压到一个固定上限,文字会糊掉)。所以长截图走分段识别:按高度切段、段间留 80 像素重叠、按行归属去重,并且有最多 6 段的硬上限以保证等待时间有确定上界(约覆盖 8000 像素高)。分段识别期间如果你自己触发了 OCR,后台会主动等待一段「安静期」再继续,避免抢资源。
翻译
9.1 服务商与凭证配置
yuSnip 支持两家翻译服务商,凭证各自独立配置:
| 服务商 | 需要什么 | 备注 |
|---|---|---|
| 百度翻译 | APP ID + API Key | 文本翻译与图片翻译共用同一把 Key |
| 有道智云 | 应用 ID + 应用密钥 | 文本与图片翻译共用同一套凭证 |
配置位置:设置 → 语言与翻译。步骤:
- 「翻译服务商」选择百度或有道(选「不启用」则关闭翻译);
- 填入对应的 ID 与 Key;
- 点旁边的验证按钮,就地验证凭证是否有效。
验证结果的显示:成功显示品牌紫的对勾;失败显示危险红并附带错误码。切换服务商时验证状态会清空,避免误判。
未配置凭证时的行为:不论从截图还是贴图触发翻译,都只会在屏幕上方弹一句「请先在设置中配置翻译服务 API 密钥」——不会打开一个只会报错的空窗口。
常见误区:百度翻译控制台里有两个地方能拿到「密钥」——「APIKey 管理」和「开发者信息」。图片翻译与文本翻译都必须用「APIKey 管理」签发的那把。如果你填成了「开发者信息」里的密钥,文本和图片翻译会同时报鉴权失败。
9.2 三种产物形态
| 形态 | 触发方式 | 产物 | 适合 |
|---|---|---|---|
| 图片 → 图片 | Ctrl+Alt+F(默认) |
一张译文覆盖在原图位置上的成品图 | 看外文截图、看外文界面、发出去给同事看 |
| 图片 → 文本 | 脚本 translate('ImageToText') |
一个极简提示便签 + 可升级到编辑窗口 | 只要文字、要能编辑 |
| 静默剪贴板 | 脚本 translate('Silent') |
结果直接进剪贴板,只有轻量提示 | 完全不想被窗口打断 |
以及三种「就地翻译」的入口:
| 入口 | 说明 |
|---|---|
| 翻译剪贴板文本 | translate('Clipboard') — 打开翻译编辑窗口 |
| 翻译焦点贴图 | translate('Sticker') — 文本贴图走文本翻译,图片贴图走图片翻译 |
| 截图翻译(跟随设置) | translate('Screen') — 模式由设置里的「图片翻译模式」决定 |
9.3 图片 → 图片:原理与限制
这是翻译功能里最「惊艳」的形态:译文会精准覆盖回原图的位置,排版、字号、颜色都尽量贴近原文。
它是怎么做的:整张图交给服务商的图片翻译接口一次完成。本地不做识别,也不做绘制——服务商直接返回一张成品图。这意味着翻译质量取决于服务商的能力(包括它对版面的还原),而且是按次计费的。
9.3.1 尺寸与体积限制
| 项目 | 限制 |
|---|---|
| 长宽比 | 无限制 |
| 边长 | 无限制(实测 1200×5000、5000×1000、3840×2160 都能按原尺寸返回成品) |
| 体积 | 编码后 不超过 5 MB —— 这是唯一的硬约束 |
超体积时怎么办:程序会自动按一条链处理——转 JPEG(质量 85)→ 仍超就等比缩到 0.8 倍 → 反复缩 → 缩到短边 30px 仍装不下则提示「图片过大,无法翻译,请缩小选区后重试」。
所以成品图可能比原图小。如果你需要 100% 原尺寸的译文图,请缩小选区分块翻译。
实践提示:在 150% 缩放的屏幕上截全屏,PNG 常有 5 ~ 15 MB,这条链几乎必然会被触发。所以在高缩放比的屏幕上做图片翻译,成品会有一定压缩。
9.3.2 语种限制与自动回退
百度图片翻译的语种表比文本翻译窄。以下四种目标语言不支持图片翻译:繁体中文、泰语、越南语、阿拉伯语。
yuSnip 的处理:在发请求之前就拦下,就近提示「该语种不支持图片翻译」。好处是——不产生计费、也不会收到一个看不懂的错误码。
同族语言的自动回退:有时候服务商识别出来的源语言与你设置的目标语言是「同一族」(中英混排时经常被识别成同一语言),结果就是「翻了个寂寞」——译文图跟原图几乎一样。
yuSnip 的处理:读服务商回传的识别到的源语言,如果发现与目标语言同族,就改用次级目标语言(设置项,默认英语)重发一次请求。
所以建议:如果你经常翻译中英混排的内容,把「次级目标语言」设成英语;如果你常翻英文,把它设成中文。
9.3.3 计费与限流
| 服务商 | 计费方式 |
|---|---|
| 百度 | 每月前 1000 次免费,之后约 0.04 元/次 |
| 有道 | 约 0.04 元/次 起 |
注意:图片翻译是按次计费的,即使失败也可能产生费用(两种除外——语种前置拦截和限流重试的失败都不计费)。
| 情况 | 处理 |
|---|---|
| 瞬时 QPS 超限 | 等待 1.5 秒补试一次。两家都是秒回且不计费 |
| 补试仍失败 | 提示「稍后再试」,不做队列、不做跨窗口节流 |
| 请求超时 | 固定 30 秒(按每次请求生效) |
| 超时表现 | 提示「翻译请求超时」,原图保留 |
并发闸门:一张贴图同一时刻只允许跑一条翻译流水线。如果你在翻译过程中再点一次翻译,会立刻提示「正在翻译中,请稍候…」并直接返回。这个闸门是必要的——并行跑两条会互相摧毁(撤掉对方的提示、互相覆盖译文,观感是永久卡在「翻译中…」)。
9.3.4 「先贴图后翻译」的体验细节
- 截图后立即把原图贴到屏幕上(不让你对着空屏等待);
- 图片正中显示一枚「翻译中…」徽章(不压暗底图,你能继续对照原文);
- 等待期间可以自由拖动和缩放这张贴图;
- 译文返回后,原地替换为成品图,保留你当前的缩放比例与位置,窗口尺寸不变;
- 失败时保留原图并撤除提示。
9.4 极简翻译浮窗
「图片 → 文本」模式下,译文会出现在一个极简的浮窗便签里(而不是直接甩出一个大窗口)。
| 项目 | 规格 |
|---|---|
| 结构 | meta 行(原文语言 → 译文语言 · 引擎 + 右上角「在编辑窗口打开」图标)+ 译文主体 + 分隔线 + 原文(灰色小字)+ 页脚 |
| 译文显示 | 最多 4 行,超出省略号(悬浮可看全) |
| 原文显示 | 最多 2 行,超出省略号(右键可复制) |
| 是否置顶 | 不置顶 |
默认行为:
| 行为 | 默认 | 可配置 |
|---|---|---|
| 译文出来立刻写入剪贴板 | 开启 | ✅ 「翻译后写入剪贴板」 |
| 失去焦点(点击别处)自动淡出关闭 | 开启 | ✅ 「失去焦点后自动关闭」 |
为什么「自动写剪贴板」可以关:因为它会顶掉你剪贴板里原有的内容。如果你经常在复制别的东西,建议关掉——关掉之后需要手动点「复制」或按 Ctrl+C。
位置可配置:跟随鼠标(在光标右下角弹出,越界自动翻到另一侧)/ 屏幕居中 / 中下。这项设置只在「图片翻译模式 = 图片→文本」时才显示。
不误关的几个细节:右键菜单展开期间不会误关;鼠标仍停在浮窗上时不会误关。重复触发时复用同一个浮窗(刷新内容),不会叠出多个。
升级到编辑窗口的两种方式(同一动作):点右上角图标,或双击便签的空白处 / 顶部 meta 行。双击如果落在可选文字上则是选词,不会触发升级。
9.5 翻译编辑窗口
需要精细处理时的完整界面。布局(默认译文为主):
| 区域 | 默认值 | 可调 |
|---|---|---|
| 窗口尺寸 | 760 × 520 | 拖边调整并自动记忆(最小 600×400) |
| 原文栏 | 左侧,200 像素 | 拖分割线调宽 120 – 420 像素 |
| 原文栏收起 | 展开 | 可收起为抽屉式 |
| 原文可编辑 | — | 有 8000 字符上限 |
窄窗口自适应:窗口宽度小于 620 像素时,自动从「左右并排」降级为「上下堆叠」。
分割线交互(一条线上三种操作):拖动改变原文栏宽度;点击收起 / 展开原文栏;双击恢复默认宽度。
语言行六个控件:复制 / 源语言下拉 / 交换 / 译文下拉 / 重新翻译 / 翻译。双栏联动:原文与译文按比例同步滚动。
快捷键:
| 快捷键 | 功能 |
|---|---|
Ctrl+Enter |
翻译 |
Ctrl+R |
重新翻译(沿用当前语言对) |
Ctrl+S |
交换源语言与目标语言 |
Ctrl+\ |
收起 / 展开左侧原文栏 |
Ctrl+Shift+C |
复制译文(有选区时优先复制选区) |
Esc |
就近取消:先收栏 → 再取消本次请求 → 最后关闭窗口 |
9.6 语言设置
| 设置项 | 默认 | 说明 |
|---|---|---|
| 源语言 | auto(自动检测) |
一般不用改 |
| 目标语言 | 简体中文 | 主目标语言 |
| 次级目标语言 | 英语 | 当检测到源语言与主目标语同族时,自动改用这门语言重翻 |
支持语种:文本翻译支持 17 种语言;图片翻译支持服务商图片接口覆盖的语种(比文本少四种,见 8.3.2)。
9.7 翻译相关的已知限制
| 场景 | 表现 / 说明 |
|---|---|
| 未配置凭证 | 屏幕上方一句提示,不开空窗口 |
| 图片目标语为繁中 / 泰 / 越 / 阿 | 发请求前就近拦截,不计费 |
| 源语言与目标语同族 | 自动用次级目标语言重发一次 |
| 图片体积超限 | 自动压缩,成品可能小于原图 |
| 长截图转贴图后翻译 | 支持(体积够的话) |
| 关闭「翻译后写入剪贴板」 | 只影响极简便签;编辑窗口的手动复制与静默剪贴板模式不受影响 |
| 服务商失败 | 无本地兜底渲染。图片→图片翻译全部由服务商完成,不存在「服务商失败就退回本地渲染」的兜底 |
AI 识图与大模型
10.1 能力概览
yuSnip 的 AI 模块把「截图 → 提问 → 得到答案」压缩成一次操作,同时提供完整的对话能力:
| 能力 | 说明 |
|---|---|
| 截图识图 | 框选 → 直接问 AI |
| 追问对话 | 在结果窗口里继续追问,形成多轮对话 |
| 多模型管理 | 同时配置多个服务商,各自独立协议、地址、密钥、模型 |
| 动态模型路由 | 切换模型时自动路由到对应的服务商端点 |
| 联网搜索深度分析 | 让 AI 先联网检索,再基于网页事实给出分析,并展示参考来源 |
| 提示词预设 | 把常用提问存成「技能命令」,用 @ 唤起 |
| 结果导出 | 复制 Markdown / 纯文本 / 存成桌面置顶的 Markdown 贴图 |
10.2 服务商配置
入口:设置 → AI 模型 → 服务商列表。
10.2.1 支持的协议
| 协议 | 说明 |
|---|---|
| OpenAI 兼容 | 覆盖 OpenAI 官方,以及所有提供 OpenAI 兼容接口的服务 |
| Anthropic 兼容 | Claude 官方,以及提供 Anthropic 兼容接口的网关 |
因为主流服务商普遍提供 OpenAI 兼容层,所以这个组合基本覆盖了所有能调用大模型的场景,包括官方 API、国内云厂商的模型服务、第三方聚合 / 中转服务,以及本地部署的模型(只要本地推理服务暴露了 OpenAI 兼容接口)。
一个实践提示:使用中转服务时,注意确认它对视觉(多模态)请求的支持情况——识图需要模型能接收图片输入。
10.2.2 单个服务商配置项
| 字段 | 说明 |
|---|---|
| 名称 | 显示名称(随便取,例如「主力」「备用」「本地」) |
| 启用 | 独立开关,可停用但保留配置 |
| 协议 | OpenAI / Anthropic |
| 接口地址 | API 基础地址(通常以 /v1 结尾,具体以服务商文档为准) |
| API 密钥 | 你的密钥 |
| 默认模型 | 可手动填写,也可从拉取到的列表里选 |
| 可用模型列表 | 逗号分隔,点「拉取模型」后可自动填充 |
| 超时 | 该服务商的请求超时(秒) |
示例配置(地址是占位示例,请替换为你自己的服务商地址):
名称 = 主力
协议 = OpenAI
接口地址 = https://api.example.com/v1
API 密钥 = <你的密钥>
默认模型 = <你的模型名>
超时 = 60
几种常见服务商对应的地址形态:
| 你想要的 | 协议 | 接口地址形态 |
|---|---|---|
| OpenAI 官方 | OpenAI | https://<官方地址>/v1 |
| Anthropic 官方 | Anthropic | https://<官方地址>/v1 |
| 国内云厂商模型服务 | OpenAI | 厂商文档给出的兼容地址 |
| 聚合 / 中转服务 | 通常 OpenAI | 服务商给出的地址 |
| 本地部署模型 | OpenAI | 本地服务的监听地址(如 http://localhost:<端口>/v1) |
10.2.3 动态模型拉取、路由与连接测试
- 点「拉取模型」会向服务商的模型列表接口请求可用模型,自动填充到「可用模型」里;
- 模型选择下拉按服务商分组(组头 + 条目 + 分隔线),切模型时自动路由到对应服务商的地址与密钥;
- 也支持手动输入模型名(有些服务商不提供模型列表接口);
- 每个服务商配置里都有「测试连接」,会返回延迟(毫秒)与可用模型数量。这个功能在排错时极其有用:地址写错、密钥错误、网络不通,都能立刻看出来。
10.3 两种识图触发模式
设置 → AI 模型 → 「识图触发方式」:
| 模式 | 行为 | 适合 |
|---|---|---|
| 直接识图(默认) | 截图后跳过输入,直接用默认提示词发起分析 | 快速、无脑、最常用 |
| 每次提问 | 截图后先弹出极简输入窗口,让你写具体需求 | 需要针对性提问 |
默认提示词就是提示词预设里被标记为「直接识图」的那一条(全局唯一)。
极简提问弹窗的特性:沉浸式输入区 + 对称的工具底栏;底栏上有模型胶囊(可以在弹窗里直接换模型);Enter 发送、Ctrl+Enter 换行、Esc 退出;点击外部失焦即关闭;不进入 Alt+Tab 列表。位置可配置为跟随鼠标或屏幕居中。
10.4 结果窗口与流式渲染
10.4.1 流式输出
AI 的回复是逐字流出的(不是等全部生成完再一次性显示)。好处是首字延迟低,长回答的等待感大幅降低。
停止生成:流式过程中可以随时停止。如果停止时还没接到任何内容,程序会智能追加一段 (已停止生成) 的说明,避免留下一个看起来像卡住的空窗口。
10.4.2 Markdown 富文本渲染
AI 的回答通常是 Markdown 格式,yuSnip 用一个自研的原生富文本控件来渲染,而不是第三方组件。带来的好处是:
- 原生划词:用鼠标拖选、
Ctrl+C复制,和普通文本框一样; - 代码块一键复制:每个代码块都有复制按钮;
- 支持表格、标题、列表、引用等排版;
- 内存占用低、零外部依赖。
10.4.3 结果窗口操作
| 操作 | 说明 |
|---|---|
| 复制 Markdown | 把回复按 Markdown 原文复制 |
| 复制纯文本 | 去掉标记,复制纯文本 |
| 重新生成 | 用同一个问题再问一次 |
| 停止生成 | 中断当前流式输出 |
| 转为贴图 | 把回复变成一张桌面置顶的 Markdown 贴图(可继续选择文字、可拖边重排) |
| 追问 | 在下方继续提问,形成多轮对话 |
| 复制图片 | 把整段对话导出一张品牌卡片图片 |
窗口尺寸会记忆(默认 480 × 640,随你拖拽自动保存)。
对话流界面采用「去卡片化」设计:消息以流的形式排列,底部是浮动胶囊输入台,快捷指令位于输入台之上,回答带有品牌头像署名,空状态有欢迎引导层。底部单行控制条包含三样东西:胶囊模型下拉(在对话中直接换模型)、联网搜索芯片、圆形发送按钮。
9.5 提示词预设与 @ 唤起
如何设置:设置 → AI 模型 → 提示词预设。每条预设包含:
| 字段 | 说明 |
|---|---|
| 名称 | 显示名 |
| 技能命令名 | 用于 @ 唤起的关键词 |
| 内容 | 完整的提示词内容 |
| 是否默认 | 标记为「直接识图」使用的那一条(全局唯一) |
如何使用:在提问弹窗或结果窗口的输入框里输入 @,会实时筛选并唤起预设下拉浮层(AiPresetMentionPopup)。可以用 ↑↓ 选择、Enter / Tab 确认、Esc 取消,也可以直接鼠标点击。选中后,@ 词元会被替换成完整的提示词内容。
- 防压缩自适应高度:浮层尺寸完全由预设条目内容撑开,严禁定位器强行压缩截断条目;若光标下方屏幕空间受限,浮层将自动智能向上翻转展开。
- 模型下拉 320px 补滚保障:提问弹窗与识图窗口的模型下拉列表最大高度全面提升至 320px,并采用基于每帧 DispatcherTimer 的补滚重试机制,确保无论服务商有多少模型,当前选中的默认模型绝不落在视口之外或被裁切。
内置的快捷指令(示例):「总结核心内容」「提取全部文字」「解答图中问题」「解释代码逻辑」「翻译为中文」等。
典型用法:给不同的工作场景各配一条预设。
名称:报错分析 技能命令:err
内容:请分析这张截图中的报错信息,指出:1) 错误类型 2) 可能的根本原因
3) 建议的排查步骤 4) 修复方案。请用简洁的中文回答。
名称:表格转Markdown 技能命令:table
内容:把图中的表格内容转换为 Markdown 表格,保持原有的行列结构,
不要遗漏任何单元格。
之后在提问时输入 @err 就能一键套用。
10.6 复制图片:对话导出为卡片
「复制图片」会把当前对话导出成一张设计过的品牌卡片图片,方便发到群里或文档里。有配图时用双栏布局,无配图时用单栏。导出时会做行级清洗——把「参考来源」区块和角标之类的辅助信息剔除,只保留正文。
10.7 联网搜索深度分析
开关:设置 → AI 模型 → 「识图完成后自动联网搜索并基于网页事实生成深度分析」,或在对话底部点联网搜索芯片。
工作方式:AI 先从图中提取关键词 → 用关键词向搜索服务发起检索 → 把检索到的网页内容注入上下文 → AI 基于这些真实网页事实给出分析 → 结果里展示参考来源。
搜索端点可自定义:默认使用一个公共的 SearXNG 兼容实例。SearXNG 是一个开源的元搜索服务,你也可以自建一个,然后把地址填进「联网搜索端点」,这样搜索走你自己的实例,结果更可控。
联网搜索端点 = https://search.example.com
典型用途:
- 看到一个陌生的报错信息 → 截图 → 联网分析 → 直接得到「这是个已知问题 + 官方解决方案链接」;
- 看到一个产品界面 → 截图 → 联网分析 → 得到产品信息、评价、替代方案;
- 看到一段不认识的代码 → 截图 → 联网分析 → 得到它出自哪个库、什么版本、有什么坑。
10.8 AI 模块的常见问题与限制
| 场景 | 表现 / 说明 |
|---|---|
| 未配置任何服务商 | 识图入口会提示先去配置 |
| 未配置视觉能力的模型 | 识图请求会失败(纯文本模型无法接收图片)——这是最常见的失败原因 |
| 使用中转服务 | 需确认该服务支持多模态请求 |
| 请求超时 | 默认 60 秒,可在服务商配置里调整 |
| 停止生成 | 未接到内容时会补一句 (已停止生成) |
| 联网搜索 | 依赖搜索端点的可用性;自建实例更稳定 |
| 智能排版依赖 | OCR 的智能排版功能需要先配置好 AI 服务商 |
AI 识图报错的排查顺序:服务商是否已启用 → 接口地址是否正确(注意是否以 /v1 结尾)→ API 密钥是否正确 → 模型名是否正确(先点「拉取模型」看看能否拉到)→ 模型是否支持图片输入 → 点「测试连接」看返回的延迟与模型数量。
长截图
11.1 什么是长截图
当内容超出一屏时(长网页、长聊天记录、长代码文件、长表格),长截图通过自动滚动 + 逐帧捕获 + 智能拼接,把多屏内容合成一张超长图。
yuSnip 的长截图有两个特点:
- 轴中立:竖向与横向使用同一套底层抽象,所以四个方向都支持(向上 / 下 / 左 / 右滚动);
- 双引擎位移估算:两套不同的匹配算法互相补充,在不同类型的滚动内容上都有较好的鲁棒性。
11.2 操作流程
- 进入长截图(工具栏入口或动作)。
- 框选要滚动捕获的区域。
- 程序开始模拟滚动并逐帧捕获。
- 滚动到你想结束的位置,停止。
- 拼接结果作为一张超长图输出(复制 / 保存 / 贴图)。
选区怎么框(这一步决定成败):
| 应该框进去 | 不应该框进去 |
|---|---|
| 会随滚动变化的内容区 | 固定的标题栏、工具栏 |
| 滚动条所在的区域(如果需要参考) | 任务栏、悬浮窗 |
| 任何固定不动的装饰元素 |
为什么:固定不动的元素会在每一帧里都出现,拼接时无法判断「这是新的内容还是重复的」,容易被误拼进结果。yuSnip 有固定层自动剥离机制(见 10.3),但选对区域会显著提高成功率。
11.3 固定层自动识别与剥离
很多页面都有固定不动的部分:纵向滚动时是顶部的吸顶导航栏、底部的固定工具栏;横向滚动时是左侧的固定侧边栏、右侧的固定面板。
yuSnip 会自动识别这些固定层,并在合成时只保留一份,不会每滚一屏就重复一遍。
11.4 手动裁剪与延伸
拼接完成后,你还可以调整结果:
| 操作 | 效果 |
|---|---|
| 拖控制面板 / 拖边框或手柄 | 裁掉长图两端多余的部分 |
| 反向拖动 | 延伸边界 |
操作期间的行为:采集与拼接会暂停(不会一边裁一边又加新的);遮罩实时跟随你的拖动;释放后完成裁剪并恢复。
11.5 全景预览窗
长截图过程中会有一个实时全景预览窗,显示目前拼到哪了。
| 特性 | 说明 |
|---|---|
| 固定宽度 | 不会因为图越来越长而占满屏幕 |
| 底部对齐 | 新内容从下方追加 |
| 视口高亮 | 高亮框同频跟随,显示当前屏幕内容在长图中的位置 |
| 智能避让 | 与选区、工具栏冲突时自动隐藏或移位 |
可以关闭:设置 → 交互与行为 →「显示长截图全景预览窗」。关闭后省掉渲染开销。
11.6 滚动输入的多种方式
长截图需要「制造滚动」,yuSnip 支持多种滚动输入:
| 输入方式 | 说明 |
|---|---|
| 原生垂直滚轮 | 标准垂直滚动 |
Shift + 滚轮 |
很多应用把 Shift+滚轮 映射为水平滚动 |
| 滚动条拖拽 | 按住并拖动滚动条也能被正确识别 |
| 自动滚动 | 程序模拟滚轮注入,按可调频率逐帧推进 |
为什么要监听这么多方式:不同软件对滚动的处理完全不同——有的只认滚轮,有的只认滚动条拖拽,有的把 Shift+滚轮 解释成水平滚动。yuSnip 通过一个底层输入监听层同时捕获这些事件,自己来驱动采集节奏,而不是「看你的鼠标滚了多少」。
11.7 合成上限
长截图在合成前会做三项分配校验,任何一项超限都会拒绝分配(而不是尝试后崩溃):
| 校验项 | 默认上限 | 说明 |
|---|---|---|
| 沿轴最大长度 | 28888 像素 | 单张长图的最大长度 |
| 输出像素总数 | 2.5 亿像素 | 宽 × 高的总规模 |
| 预估字节数 | 1 GB | 内存占用预估 |
为什么要有这些限制:一张 4K 宽、30000 像素高的位图,内存占用会到几 GB 级别,直接分配会失败或让系统卡死。设置上限的意义是「优雅地拒绝」而不是「把系统拖垮」。
另外两条约束:选区限制在单个显示器内(跨屏滚动没有意义);选区最小尺寸 32 像素。
11.8 与其他功能的联动
| 后续动作 | 说明 |
|---|---|
| 保存 | 正常入库(如果开了历史收集) |
| 复制到剪贴板 | ⚠️ 这一路不进截图历史——因为该分支不产生源文件,而重新编码一张超长图代价过高 |
| 转贴图 | 之后可以继续滚轮缩放浏览、可以翻译(体积允许的话) |
| OCR | 走分段识别,且受可搜字数上限约束 |
11.9 长截图相关的已知限制
| 场景 | 表现 / 说明 |
|---|---|
| 页面滚动到尽头 | 对比相邻帧检测到内容不再变化,自动停止并提示 |
| 应用无响应 | 自动停止并提示(不会一直傻等) |
| 固定层剥离失败 | 结果里可能出现重复的导航栏——请缩小选区,把固定元素排除在外 |
| 横向滚动 | 支持(需要目标应用真的支持横向滚动) |
| 惯性滚动 | 建议等滚动停下再继续,或使用自动滚动 |
| 超过合成上限 | 直接拒绝,给出提示 |
截图历史
截图历史是一个本机的图片库:自动收集你产出的图片,支持分类筛选、关键词搜索、二次利用(复制 / 贴图 / 另存为 / 查看大图)。
12.1 开关与收集范围
开关:设置 → 通用与存储 →「截图历史收集」(两段开关)。
| 档位 | 行为 |
|---|---|
| 关闭(默认) | 不写任何图片到磁盘 |
| 开启 | 全量收集所有产出图片 |
为什么默认关闭:收集会往配置目录写入图片副本,属于额外的磁盘写入行为,yuSnip 不替你默认打开。
开启后收集哪些:
| 产出来源 | 是否收集 |
|---|---|
| 截图保存到文件 | ✅ |
| 截图复制到剪贴板 | ✅ |
| 截图转为贴图 | ✅ |
| 长截图保存 | ✅ |
剪贴板快速贴图(F3) |
✅ |
| 脚本 / 命令行贴图 | ✅ |
| 贴图内容替换(例如翻译原地换图) | ❌ |
| 图片翻译的中间预览 | ❌ |
| OCR / 翻译 / AI 识图的中间裁剪 | ❌ |
长截图选择「复制到剪贴板」时不进历史——该分支不产生源文件,重新编码一张超长图代价过高。选「保存」时正常入库。
12.2 存储与容量
%APPDATA%\yuSnip\history\
├── index.ini # 索引(制表符分隔)
├── 截图\{编号}.png # 全图,按来源分目录
├── 长截图\{编号}.png
├── 贴图\{编号}.png
├── thumbs\{类型}\{编号}.jpg # 缩略图
└── 贴图存档\{编号}.json # 贴图的可编辑存档
三个设计要点:索引只记编号与来源、不存路径(所以目录结构变了索引格式也不用改);按来源分目录(可以直接进目录浏览);图片缺失自愈(加载时发现某条记录的图片不存在,会自动剔除该条索引)。
容量双闸:
| 闸门 | 默认值 | 可调范围 |
|---|---|---|
| 条数上限 | 200 条 | 20 – 2000 |
| 总容量上限 | 800 MB | 100 – 8000 |
任一超限即从最旧删起,并保证至少留最新一条。为什么需要两道闸:只按条数裁剪是不够的——在 4K 屏幕上,一张全屏 PNG 可能有 5 ~ 10 MB,200 张最坏能达到 1 ~ 2 GB。
这两项的入口:条数与容量上限不进设置页 UI,只能直接改
settings.ini里的CaptureHistoryMaxCount与CaptureHistoryMaxMegabytes。这是刻意的设计——它们属于「高级调节」。
与云同步的关系:截图历史不参与云同步、不随配置导出。它是本机行为痕迹 + 大文件,不适合跨设备同步。但上面那三项收集策略属于配置,仍在 settings.ini 里,会随云同步走。
12.3 历史窗口
两个入口:系统托盘 →「截图历史」;设置 → 通用与存储 →「查看历史」。
┌──────────────────────────────────────────────────────────────┐
│ 标题栏 │
├──────────────────────────────────────────────────────────────┤
│ 工具栏 [筛选:全部 / 截图 / 贴图 / 长截图] [搜索框] [清空] │
├──────────────────────────┬───────────────────────────────────┤
│ 缩略图网格 │ 详情栏(300px) │
│ │ 大图预览 / 时间 / 尺寸 / 来源 / │
│ │ 占用 / 识别文字 / 操作按钮 │
├──────────────────────────┴───────────────────────────────────┤
│ 状态栏:条数 · 占用 · 选中 │
└──────────────────────────────────────────────────────────────┘
窗口尺寸与位置会自动记忆。卡片信息:缩略图 + 类型标记 + 第三行的可搜文本摘要(没有可搜文本时显示「尚未识别」)。
详情栏内容:大图预览;时间、像素尺寸、来源类型、文件占用;识别文字(最多 3 行截断);两行共四个操作按钮:复制 / 贴到屏幕 / 另存为 / 删除。
「打开文件位置」在卡片的右键菜单里。空状态有四种文案,分别对应:收集功能关闭 / 没有任何记录 / 筛选结果为 0 / 搜索无命中——这样你能立刻分辨「是没数据还是被筛掉了」。
12.4 文字搜索
这是截图历史里最有价值的功能。一个搜索框吃两种查询:时间和内容。
12.4.1 判定顺序
判定顺序是固定的,而且有一条很重要的规定:日期形态优先于关键词。
为什么:如果先按关键词处理,那么搜索 14:03 会去匹配文本内容,误命中包含这个字符串的段落,而用户的意图显然是「找那个时间点附近截的图」。
1. 中文相对词 今天 / 昨天 / 前天 / 本周 / 上周 / 本月 / 上个月
2. 相对时长 30分钟前 / 2小时前 / 3天内 / 1周内
3. 日期时刻 2026-09-06 / 20260906 / 09-06 / 9月6日 / 2026-09 / 9月 / 2026
(可以跟 14 或 14:03 收窄到某时刻)
4. 类型词 贴图 / 截图 / 长截图
5. 兜底:关键词 空格分词,逐词 AND,忽略大小写
12.4.2 搜索示例
| 你输入 | 含义 |
|---|---|
今天 |
今天截的所有图 |
今天 14:03 |
今天 14:03 附近截的图 |
昨天 报错 |
昨天的图里,识别文字包含「报错」的 |
30分钟前 |
最近半小时内的 |
3天内 |
最近三天 |
2026-09 |
2026 年 9 月的 |
9月6日 |
9 月 6 日的 |
贴图 配置 |
贴图类,且含「配置」文字的 |
hotkey pinKey |
识别文字里同时包含这两个词(空格 = AND) |
9/14 |
⚠️ 不算日期,按关键词搜(避免误判:9/14 也可能是版本号或分数) |
12.4.3 几个细节
输入归一化:查询串会先做归一——全角折半角、连续空白压成一个空格。库里的文本在写入时也用同一套规则归一,所以全角 / 半角、多余空格都不会导致搜不到。
空格 = AND:多个词之间是「都要包含」的关系。这样表达能力更强(页面 报错 比「包含页面或报错」有用得多)。
高亮:命中词会在三处被高亮——卡片的文本摘要、详情栏的识别文字、以及搜索无命中时的提示行。只有关键词分支才高亮(时间 / 类型分支没有具体词)。命中计数常驻状态栏。
时间 / 类型查询 0 命中时会有一句额外提示,告诉你「当前是按时间 / 类型理解的」——只提示,不会自动改变你的查询方式。
刻意不做的功能:文件名搜索、布尔表达式、正则、中文数字(只认阿拉伯数字,一周内 不认,1周内 认)。
搜索相关的快捷键:
| 快捷键 | 功能 |
|---|---|
Ctrl+F |
聚焦搜索框并全选已有内容 |
/ |
聚焦搜索框(不带 Shift) |
搜索框内 Enter / Shift+Enter |
在命中集内向后 / 向前循环,并自动滚进可视区 |
Esc |
两段式:搜索框有字 → 只清空并留在框里;已空 → 把焦点交回窗口;再按才关窗 |
Delete |
删除选中的历史记录 |
⚠️ 重要:焦点在任意输入框内时,除输入框自己的按键外,一律不响应窗口级快捷键。否则你在搜索框里想删一个字,就会把选中那条历史记录删掉。
12.5 图片查看器
双击历史卡片会打开一个轻量图片查看器(而不是直接贴到屏幕上)。
| 功能 | 操作 |
|---|---|
| 缩放 | 鼠标滚轮自由缩放(0.05x ~ 10.0x) |
| 平移 | 左键拖拽 |
| 自适应 / 原始尺寸 | 双击在「适应窗口」与「1:1 原始尺寸」之间平滑切换 |
| 上一张 / 下一张 | 按钮翻页(在当前的筛选结果内翻) |
| 顺 / 逆时针旋转 90° | 按钮 |
| 贴到屏幕 | 按钮(含标注恢复) |
| 复制图片 / 另存为 | 按钮或 Ctrl+C / Ctrl+S |
| 高亮开关 | 按钮 —— 开关搜索词高亮 |
标题栏信息:来源类型、拍摄时间、像素尺寸、图片文件大小。
12.5.1 搜索词高亮定位
这是「搜索 → 看图」闭环的关键一环:你用关键词搜到一张图后,双击打开,关键词在图上的位置会直接被高亮框标出来。
搜索时选中的条目会在后台静默预取它的识别框到内存缓存,所以双击打开时随首帧即时呈现,没有等待感。切换图片时高亮自动联动刷新;没有搜索词时保持纯净;搜索类型词时高亮词也会被透传使用。
12.6 自动识别文字(让历史可搜)
历史的搜索能力建立在「每条记录都有一段可搜文本」之上。
贴图类:自动就有了。文本贴图 / Markdown 贴图 / 颜色贴图直接存源文本;图片贴图在贴图关闭时回写识别文字。
普通截图:需要开开关。设置 → 通用与存储 →「截图自动识别文字」(默认关闭)。开启后,截图(保存 / 复制两路)与长截图落库后,后台静默跑一次 OCR 并回写可搜文本。
为什么默认关闭:会额外加载一次 OCR 引擎并占用 CPU,属于额外的后台开销。
它的限流策略保证不影响你正常使用:在图片、缩略图、索引都写完之后才触发;每次现读开关;已有文字的不重跑;单 worker 串行,并会在你自己发起 OCR 时等待一段安静期;失败只记一条警告日志;全程无任何提示。
一个重要限制:存量截图不补。开启开关后,只有新产生的截图会被识别,之前已经存在的老记录不会补做——给老记录批量补做等于偷偷扩大资源占用。
长截图的可搜文本上限:无论走哪条路径,索引里的可搜文本有 1000 字上限。密排文字大约 700 像素高(约 25 行)就能吃满,所以超长长截图真正能被搜到的只有开头一屏多一点。这是存储层的限制,设计上是为了控制索引文件体积。
12.7 截图历史相关的已知限制
| 场景 | 表现 / 说明 |
|---|---|
| 收集功能关闭 | 历史窗口显示「收集功能已关闭」的空状态 |
| 长截图复制到剪贴板 | 不进历史(已知取舍) |
| 存量截图不补 OCR | 设计口径 |
| 长截图可搜文本 | 上限 1000 字,只有开头一屏多可搜 |
| 恢复出来的文本类贴图 | 变成图片贴图(底图是排版快照),不能再拖边重排 |
| 搜索框内按键 | 窗口级快捷键全部让路,避免误删 |
| 图片缺失 | 自动剔除索引条目 |
快捷键与动作
yuSnip 的快捷键分为两类,理解这个区分是用好它的前提。
13.1 两类快捷键
| 维度 | 全局动作热键 | 窗口内置快捷键 |
|---|---|---|
| 作用范围 | 全系统(无论前台是什么程序) | 仅在对应窗口处于前台时 |
| 配置位置 | 设置 → 快捷键与动作 → 全局动作 | 设置 → 快捷键与动作 → 内置快捷键 |
| 可清空 | ✅(清空后仍可用命令行调用) | ✅(恢复默认或重录) |
| 典型例子 | Ctrl+Alt+A 截图 |
Shift+B 画笔 |
为什么要分成两类:全局热键是「唤起工具」,窗口内快捷键是「在工具里操作」。前者需要系统级注册(因为要在任何程序上生效),后者不需要。
13.2 内置动作库
出厂默认(5 项,覆盖最高频场景):
| 动作名 | 默认热键 | 脚本 |
|---|---|---|
| 区域截图 | Ctrl+Alt+A |
yuSnip.screenShot(); |
| 快速贴图 | F3 |
yuSnip.pinFromClipboard(); |
| 截图并OCR(弹窗) | Ctrl+Alt+O |
yuSnip.screenShot('Ocr'); |
| 截图翻译(覆盖贴图) | Ctrl+Alt+F |
yuSnip.translate('ImageToImage'); |
| 显示/隐藏所有贴图 | Shift+F3 |
yuSnip.toggleAllStickers(); |
其余内置动作(收在「+ 新增动作」的预设下拉里,选择后一键载入):
| 动作名 | 脚本 |
|---|---|
| 截图并复制 | yuSnip.screenShot('Copy'); |
| 截图并保存 | yuSnip.screenShot('Save'); |
| 截图并贴图 | yuSnip.screenShot('Pin'); |
| 截图并OCR(仅提示) | yuSnip.screenShot('OcrToast'); |
| 截图并识图(默认) | yuSnip.screenShot('Vision'); |
| 截图并直接识图(提问) | yuSnip.screenShot('VisionPrompt'); |
| 截图并抠图(通用主体) | yuSnip.screenShot('MattingGeneral'); |
| 截图并抠图(人像精细) | yuSnip.screenShot('MattingPortrait'); |
| 截图翻译(文本窗口) | yuSnip.translate('ImageToText'); |
| 截图翻译(静默剪贴板) | yuSnip.translate('Silent'); |
| 截图翻译(默认) | yuSnip.translate(); |
| 翻译剪贴板(文本窗口) | yuSnip.translate('Clipboard'); |
| 翻译贴图(焦点) | yuSnip.translate('Sticker'); |
| 恢复上次关闭的贴图 | yuSnip.restoreLastSticker(); |
| 关闭所有贴图 | yuSnip.destroyAllPin(); |
管理方式:列表中的任意动作都可以随时编辑、测试运行、修改热键、删除。
两条设计规则:
- 动作存在于列表中即生效,从列表中删除即停用。没有单独的启用开关;
- 预设动作的名字是只读的,不能改。这是为了保证命令行按名称调用在所有机器上行为一致。
13.3 新建与编辑自定义动作
点「+ 新增动作」打开动作编辑器:
| 字段 | 说明 |
|---|---|
| 名称 | 动作显示名(这个名称就是命令行的调用键) |
| 脚本 | 多行脚本内容,每行一条命令 |
| 热键 | 录制一个全局热键,或留空 |
保存后即刻生效——热键立即注册,命令行立即可以按名称调用。
一个实用设计:每条动作卡片都会显示一份命令行调用摘要(形如 yuSnip.exe -r "yuSnip.translate(''Silent'');")。点击摘要行可以复制完整命令,直接粘贴到终端或第三方工具里用。
13.4 热键录制规则
| 规则 | 说明 |
|---|---|
| 禁止裸字母 / 裸数字 | 防止全局劫持正常输入(你打字的时候会被抢走) |
| 必须包含修饰键或功能键 | Ctrl / Alt / Win 至少一个,或使用 F1–F12 |
| 录制期间保护 | 录制时会临时注销已注册的热键,避免被系统或其它程序拦截导致录不到 |
建议避免的组合:与系统功能冲突的(如 Win+L 锁屏、Ctrl+Alt+Del)、与常用软件冲突的(如 Ctrl+Shift+S 在很多编辑器里是「另存为」)、与输入法切换冲突的(如 Ctrl+Space)。
如果热键注册失败:程序会回退到低级键盘钩子方案。这时全系统每次按键都会唤醒 yuSnip,会有轻微的空闲 CPU 占用。所以推荐的做法还是换一个不被占用的热键。
13.5 内置快捷键改键
设置 → 快捷键与动作 →「内置快捷键」段,可以重新录制截图窗口与贴图窗口的按键。
持久化规则:只保存与出厂默认不同的项。所以没改过的项永远跟随程序内置默认(程序升级后新的默认值能生效),改过的项会被记住。
改了键之后,提示也会同步:工具栏的悬浮提示、放大镜的提示、设置页的小抄、贴图右键菜单上的快捷键标注,都会跟着变。
固定键位(不参与改键):
| 键位 | 用途 |
|---|---|
方向键 ↑↓←→ |
微移选区 / 步进选中的标注图元 |
按住 Alt |
显示截图辅助线 |
Space |
平移选区 / 切换标注模式 / 进入贴图标注 |
鼠标手势(滚轮缩放、中键贴图 / 关闭、Shift+双击) |
鼠标操作,不参与键盘自定义 |
13.6 中文输入法零拦截
问题:在中文输入法激活的状态下,很多软件的快捷键会失灵——因为输入法会先吞掉按键。
yuSnip 的做法:截图窗口与贴图窗口在创建时会解除输入法关联,所以中文模式下按键不会被吞;文字标注编辑时,程序会重新建立输入法关联,所以中文输入照常工作。这个机制让「中文模式下按 Shift+B 切画笔」也能正常工作。
13.7 完整快捷键速查表
截图窗口
| 快捷键 | 功能 |
|---|---|
Shift+B |
画笔工具(绘制中按住 Shift 约束水平 / 垂直 / 45° 直线) |
Shift+A |
箭头工具 |
Shift+T |
文字工具 |
Shift+R |
矩形 / 椭圆工具 |
Shift+M |
马赛克 / 模糊工具 |
Shift+S |
聚光灯工具 |
单键 C |
取色器(复制当前光标/放大镜下的中心颜色值到剪贴板并完成截图,自带物理探测兜底) |
Shift+C |
计数标号工具(序号步骤标记,与单键 C 独立解耦) |
Shift+K |
智能抠图(对当前选区生成贴图并自动调用离线模型提取透明主体) |
Shift+E |
橡皮擦:清除全部标注 |
Shift+P |
调色盘 / 色板管理 |
Shift(单独按下松开) |
放大镜色值格式在 HEX / RGB 间切换 |
Space |
选区已确认后:切换「上次使用的标注工具」 |
↑ ↓ ← → |
微移选区 1 像素(若已 Ctrl 选中某图元,则步进那个图元) |
W / S / A / D |
微移鼠标光标 1 像素(会照常驱动元素检测) |
按住 Alt |
显示截图辅助线(固定键位) |
Ctrl+Z / Ctrl+Y |
撤销 / 重做标注 |
Ctrl+Q |
翻译选区 |
Ctrl+S |
另存为 |
Ctrl+Shift+S |
快速保存 |
Delete / Backspace |
删除当前选中的标注图元 |
Enter |
确认选区 |
Esc |
取消截图 |
按住 Space + 拖动 |
平移选区(尺寸不变) |
| 选区内双击左键 | 确认并复制到剪贴板 |
Ctrl + 点击已画图形 |
选中 / 切换工具 / 拖动移动 |
| 鼠标滚轮(未起框) | 在当前命中点的嵌套元素层级间钻取 |
| 鼠标滚轮(选区已确认·无工具) | 以选区中心扩缩选区(4px 下限) |
| 鼠标滚轮(选区内·有工具) | 调当前工具粗细 |
| 鼠标中键 | 当前选区或探测元素直接转为贴图(左键不必松手) |
贴图窗口
| 快捷键 | 功能 |
|---|---|
Ctrl+L |
锁定 / 解锁 |
Ctrl+P |
开关鼠标穿透 |
Shift+R |
切换缩略图模式 |
Shift+Y |
切换阴影显示(仅焦点贴图) |
Ctrl+C |
复制图像 / 复制选中文本 |
Ctrl+S |
另存为图片 |
Ctrl+Q |
翻译贴图 |
Space |
进入 / 退出标注模式 |
标注模式下 Ctrl + 点击 |
选中该图形并切换到对应工具,可拖动 |
标注模式下 Ctrl+Z / Ctrl+Y |
撤销 / 重做 |
标注模式下 Delete / Backspace |
删除当前选中的标注 |
标注模式下 ↑ ↓ ← → |
步进选中的图形,每次 1 像素(固定键位) |
Esc |
关闭贴图(标注模式下先退标注) |
| 鼠标中键 | 直接关闭贴图 |
Shift + 双击 |
进入 / 退出缩略图模式 |
| 鼠标滚轮 | 缩放贴图(以指针为锚点) |
| 鼠标边缘拖拽 | 调整大小 |
OCR 窗口
| 快捷键 | 功能 |
|---|---|
F2 |
编辑选中行(分行视图) |
Del |
删除选中行(焦点在输入框内时不劫持) |
Ctrl+A |
合并视图全选文本 |
Ctrl+C / Ctrl+V |
复制 / 粘贴 |
Esc |
收菜单 → 收工具栏 → 关窗口(就近取消) |
Tab / Shift+Tab |
编辑状态下在行之间切换焦点 |
翻译窗口
极简浮窗:Esc 淡出关闭;Ctrl+C 复制;Ctrl+Shift+C 复制完整原文;拖拽移动;双击空白处 / meta 行升级到编辑窗口。
编辑窗口:Ctrl+Enter 翻译;Ctrl+R 重新翻译;Ctrl+S 交换源 / 目标语言;Ctrl+\ 收起 / 展开原文栏;Ctrl+Shift+C 复制译文;Esc 就近取消。
截图历史窗口
| 快捷键 | 功能 |
|---|---|
Ctrl+F |
聚焦搜索框并全选 |
/ |
聚焦搜索框 |
搜索框内 Enter / Shift+Enter |
向后 / 向前循环命中 |
Esc |
两段式清空 → 交回焦点 → 关窗 |
Delete |
删除选中的历史记录 |
13.8 快捷键相关的边界
| 场景 | 表现 / 处理 |
|---|---|
| 热键被其它程序占用 | 回退到低级键盘钩子(有轻微空闲 CPU 占用),或你换一个键 |
| 裸键热键(无修饰键) | 由前台应用优先消费,系统窗口会吃掉它 → 普通权限下无法触发 |
| 带修饰键的组合 | 被系统强制拦截,任何前台窗口下都能触发 |
| 需要在系统级窗口触发 | 开启管理员模式 |
| 设置里清空热键 | 动作仍然保留,可以用命令行调用 |
| 恢复默认 | 设置页有「恢复默认」按钮,恢复为出厂默认的核心动作与热键 |
脚本与自动化
14.1 脚本语法
| 规则 | 说明 |
|---|---|
| 单位 | 一行一条命令 |
| 注释 | // 开头,整行注释 |
| 分号 | 行尾分号可选 |
| 前缀 | yuSnip. 或 pixpin.(兼容 PixPin 脚本语法) |
| 大小写 | 命令名大小写敏感 |
| 参数引号 | 字符串参数用单引号 |
示例:
// 截一张图并直接贴成贴图
yuSnip.screenShot('Pin');
// 翻译剪贴板内容(打开编辑窗口)
pixpin.translate('Clipboard');
14.2 命令参考
yuSnip.screenShot(action)
启动截图会话,可选指定截完之后的动作。取值见 3.1 节的表格('Copy' / 'Pin' / 'Save' / 'Ocr' / 'OcrToast' / 'Translate' / 'Vision' / 'VisionPrompt',省略则停留在标注界面)。
yuSnip.directScreenShot(x, y, w, h, action)
无界面直接截取指定区域。x, y 是虚拟屏幕坐标,w, h 是宽高,action 为 'Copy'(默认)/ 'Pin' / 'Sticker' / 'Save'。
用途:定时截取固定区域、监控某个面板的变化。
yuSnip.pinFromClipboard()
把剪贴板内容(图片 / 文本 / 颜色)转为贴图。
yuSnip.destroyAllPin() / yuSnip.toggleAllStickers()
关闭所有贴图 / 显示隐藏所有贴图。
yuSnip.restoreLastSticker()
恢复上次关闭的贴图:按设置「恢复贴图的时间顺序」从贴图存档里取最近一张,用历史底图重建现场(位置 / 尺寸 / 缩放 / 锁定 / 穿透 / 阴影 / 缩略态 + 全部矢量标注)。恢复即销档,所以连按可以依次拉回上一张。⚠️ 前置条件:截图历史收集必须是「开启」。
yuSnip.translate(action)
| 参数 | 说明 |
|---|---|
'Screen' |
截图后翻译,模式跟随设置 |
'ImageToImage' |
截图翻译 · 覆盖贴图(成品图) |
'ImageToText' |
截图翻译 · 文本窗口 |
'Silent' |
截图翻译 · 静默剪贴板 |
'Clipboard' |
翻译剪贴板文本(打开编辑窗口) |
'Sticker' |
翻译焦点贴图 |
| (省略) | 默认行为 |
yuSnip.matting(model)
对当前焦点的图片贴图执行 AI 离线抠图主体提取:
| 参数 | 说明 |
|---|---|
'General' |
使用 U²-NetP FP32 模型执行通用主体抠图 |
'Portrait' |
使用 MODNet FP32 模型执行人像精细抠图 |
| (省略) | 按设置中的「智能抠图默认模型」执行 |
14.3 命令行调用
# 1. 按动作名称执行(内置动作和自定义动作都可以)
yuSnip.exe -a "截图并OCR"
yuSnip.exe --action "快速贴图"
yuSnip.exe -a "我的自定义自动化动作"
# 2. 直接执行脚本代码
yuSnip.exe -r "yuSnip.screenShot('Ocr');"
# 3. 从文件读取脚本
yuSnip.exe -f "C:\path\to\script.txt"
# 4. PixPin 兼容语法
yuSnip.exe -r "pixpin.screenShot('Pin');"
| 参数 | 全称 | 说明 |
|---|---|---|
-a |
--action |
按动作名称执行 |
-r |
— | 直接执行脚本字符串 |
-f |
— | 从文件读取脚本 |
返回值:0 = 成功执行(作为主实例);2 = 已有实例在运行,指令已转发给它。
工作机制:程序启动时先尝试获取一个全局互斥锁判定「是不是已经有实例在跑」。如果没有实例,本进程成为主实例,注册热键并建立指令接收通道;如果已有实例,本进程不启动界面,而是把指令(动作名或脚本内容)发送给主实例,然后自己退出。简单说:你从命令行调用的 yuSnip,实际是让已经在跑的那个实例去干活。
14.4 权限级别:调用没反应的常见原因
这一节很重要,是「为什么我的自动化调用没反应」的常见原因。
问题:如果你开启了「管理员模式」,常驻实例运行在高完整性级别。此时由普通权限的 shell / 脚本工具发起的第二次启动,仍会走「检测到已有实例 → 发送指令」这条路径,但消息能否跨完整性级别送达高权限实例在部分环境下可能不通。
结论性建议:让调用方与常驻实例保持同级权限——两者都普通,或两者都管理员。
如果你从以下工具调用 yuSnip 且发现无效,请检查权限是否一致:StreamDeck、Quicker、AutoHotkey、计划任务(计划任务默认可能以最高权限运行)。
14.5 PixPin 兼容与容错
| 兼容项 | 说明 |
|---|---|
| 前缀 | pixpin. 与 yuSnip. 等价 |
| 拼写容错 | 兼容历史拼写变体(如 pinFromCilpBoard、destoryAllPin) |
| 兼容目的 | 让从 PixPin 迁移过来的用户和脚本能直接用 |
14.6 实战配方
固定区域定时截图(配合 Windows 计划任务,每 5 分钟一次):
yuSnip.exe -r "yuSnip.directScreenShot(1600, 40, 320, 200, 'Save');"
⚠️ 注意计划任务的权限设置要与 yuSnip 常驻实例一致。
一键「截图 → OCR → 复制」(结果直接进剪贴板,不弹窗):
yuSnip.exe -a "截图并OCR(仅提示)"
一键「截图 → 翻译 → 贴图」:
yuSnip.exe -r "yuSnip.translate('ImageToImage');"
桌面快捷方式:目标填 "<yuSnip.exe 的完整路径>" -a "快速贴图",之后双击快捷方式就相当于按了一次 F3(适合放在触屏设备或快捷键面板上)。
与 Quicker / StreamDeck 联动:在动作卡片上点击脚本摘要行即可复制完整命令,直接粘贴到第三方工具的「运行命令」字段即可。
自定义动作示例:
名称:工作截图归档 脚本:yuSnip.screenShot('Save');
名称:翻译并贴出 脚本:yuSnip.translate('ImageToImage');
名称:收工清屏 脚本:yuSnip.destroyAllPin();
14.7 脚本与自动化的边界
| 场景 | 表现 / 说明 |
|---|---|
| 分号 | 可选(写不写都能用) |
| 注释 | // 开头,只支持整行注释 |
| 调用无效 | 优先检查权限级别是否一致(见 13.4) |
| 主实例未运行 | 命令行调用会先启动主实例,然后再执行 |
设置项速查
设置窗口采用左侧导航 + 长滚动内容区,共 9 个分页:通用与存储 / 交互与行为 / 快捷键与动作 / 语言与翻译 / AI 模型 / 云存储配置 / 自定义工具栏 / 使用统计 / 关于。
一个交互细节:内容区底部有一条操作反馈状态条——成功为品牌紫底白字(3.2 秒后淡出);进行中图标常驻;失败为危险红底白字(8 秒,可手动关闭)。
配置文件体系:yuSnip 用五份文件分层存储配置。
| 文件 | 内容 | 是否云同步 | 是否导出 | 恢复默认时 |
|---|---|---|---|---|
settings.ini |
主设置 | ✅ | ✅ | 写回出厂默认 |
actions.ini |
动作与全局热键 | ✅ | ✅ | 写回出厂默认 |
shortcuts.ini |
内置快捷键覆盖项 | ✅ | ✅ | 写回出厂默认 |
stats.ini |
使用统计 | ❌ | ❌ | 不清零 |
history\ |
截图历史 | ❌ | ❌ | 不清除 |
这个分层是刻意的:前三份是「配置」,应该跟着你走;后两份是「本机数据」,不应该被同步链路带走(否则会出现「同步后统计数字不对」「历史图片被上传到云端」这类问题)。
手改 INI 是支持的(程序会做合法性校验);非法值会被归一化回退并记一条警告日志。例如辅助线被改成一个不存在的值会回退为「开启」;静默复制等待时间写 7 秒会吸附到最近的合法档位。
15.1 通用与存储
| 设置项 | 默认值 | 说明 |
|---|---|---|
| 截图保存目录 | 系统图片 / 截图目录 | 快速保存的目标位置 |
| 文件名模板 | Screenshot_{yyyyMMdd_HHmmss} |
支持时间占位符 |
| 保存后自动复制到剪贴板 | 开启 | |
| 保存成功显示通知 | 开启 | 通知可点击打开所在目录 |
| 保存时播放系统提示音 | 关闭 | |
| 主题模式 | 跟随系统 | 浅色 / 暗色 / 跟随系统 |
| 开机自启动 | 关闭 | 管理员模式开启时自动改走计划任务启动 |
| 管理员模式 | 关闭 | 见 14.8 节 |
| 启动时显示托盘提示 | 开启 | |
| 启动时静默检查更新 | 开启 | 仅发现新版才弹窗 |
| 截图历史收集 | 关闭 | 见第 12 章 |
| 截图自动识别文字 | 关闭 | 见 11.6 节 |
不进设置页 UI 的两项:历史保留条数上限(默认 200,范围 20–2000)与容量上限(默认 800 MB,范围 100–8000),只能直接改
settings.ini。
15.2 交互与行为
| 设置项 | 默认值 | 说明 |
|---|---|---|
| 自动检测模式 | 仅窗口 | 不检测 / 仅窗口 / 检测元素 / 自动 |
| 元素检测触发延时 | 10 ms | 范围 0–100,步进 10 |
| 元素检测移动幅度 | 20 px | 范围 0–200,步进 10 |
| 显示长截图全景预览窗 | 开启 | |
| 截图辅助线 | 开启(按住 Alt) |
关闭 / 开启 / 始终显示(紫色参考对齐线) |
| 十字准星 | 开启(按住 Alt) |
关闭 / 开启 / 始终显示(贯穿整屏的分段对比色细线与自绘瞄准十字,独立设置) |
| 智能抠图默认模型 | 通用主体 (U²-NetP) | 通用主体 (U²-NetP) / 人像精细 (MODNet) |
| 抠图结果输出去向 | 剪贴板并贴图 | 仅剪贴板(提取后自动复制并关闭临时贴图) / 仅贴图 / 剪贴板并贴图 |
| 截图功能提示 | 开启 | 左下角快捷键小抄 |
| 记住上次标注工具 | 关闭 | 截图时自动选用上次用过的工具 |
| 贴图双击动作 | 关闭贴图 | 关闭 / 缩略图 / 复制 / 无操作 |
| 贴图默认开启阴影 | 开启 | |
| 贴图文本可选择 | 关闭 | |
| 选中文本贴图 | 关闭 | 按 F3 直接贴选中文字 |
| 调整文本贴图 | 关闭 | 改变文本贴图拖边语义 |
| 恢复贴图的时间顺序 | 按关闭时间 | 按关闭时间 / 按创建时间 |
「选区效果」的三个参数(圆角 / 描边 / 阴影)在配置文件里有对应键,但设置页不放第二份控件——唯一入口是截图遮罩内的参数条,避免「两个地方都能改,值不一致」。
15.3 语言与翻译 · OCR
| 设置项 | 默认值 | 说明 |
|---|---|---|
| 翻译服务商 | 不启用 | 不启用 / 百度翻译 / 有道智云 |
| 百度 APP ID / API Key | 空 | 文本与图片翻译共用 |
| 有道应用 ID / 应用密钥 | 空 | 文本与图片翻译共用 |
| 源语言 | auto |
自动检测 |
| 目标语言 | 简体中文 | |
| 次级目标语言 | 英语 | 源语言与目标语同族时自动切换 |
| 图片翻译模式 | 图片→文本 | 图片→文本 / 图片→图片 |
| 极简浮窗位置 | 跟随鼠标 | 仅「图片→文本」模式显示 |
| 失去焦点后自动关闭 | 开启 | 仅「图片→文本」模式显示 |
| 翻译后写入剪贴板 | 开启 | 仅「图片→文本」模式显示 |
| OCR 结果输出方式 | 打开编辑窗口 | 打开编辑窗口 / 静默复制 |
| 静默复制提示窗位置 | 中下 | 中上 / 中下 / 右上 / 右下 |
| 静默复制提示窗等待时间 | 5 秒 | 3 / 5 / 10 秒 |
15.4 AI 模型
| 设置项 | 默认值 | 说明 |
|---|---|---|
| 识图触发方式 | 直接识图 | 直接识图 / 每次提问 |
| 提问弹窗位置 | 跟随鼠标 | 跟随鼠标 / 屏幕居中 |
| 当前激活服务商 / 当前模型 | 空 | 随识图窗口所选模型自动路由 |
| 提示词预设 | 一条「通用识图」 | 含名称、技能命令名、内容、是否默认 |
| 联网搜索深度分析 | 关闭 | |
| 联网搜索端点 | 一个公共实例 | 需 SearXNG 兼容 |
| 请求超时 | 60 秒 |
15.5 自定义工具栏(抽屉格架构与高级打组)
「设置 → 自定义工具栏」在 2026-09-12 迎来全新抽屉格架构(方案甲)重构,将工具栏的自定义自由度与视觉美感推向新高度:
┌──────────────────────────────────────────────────────────────────┐
│ 顶部预览区:当前截图工具栏(一级按钮、分裂格组头、分隔线) │
├──────────────────────────────────────────────────────────────────┤
│ 中间组卡库:等宽并排组卡(UniformGrid 自适应等宽,可容纳 3 组) │
├──────────────────────────────────────────────────────────────────┤
│ 底部工具池:可用工具仓库 + 无限供应常驻分隔线 chip + 拖入丢弃遮罩 │
└──────────────────────────────────────────────────────────────────┘
- 等宽自适应网格组卡:采用
UniformGrid自适应等宽列排布,随窗口尺寸在 3/4/5 列间智能平铺,整行永远对齐铺满,最小 940px 宽度下完美适配;组卡单行双矩形排布(左侧 32px 拖拽把手 + 右侧 32px 成员展示行)。 - 优雅通栏居中引导卡:当组卡全部清空时,自动呈现通栏居中的「+ 新建组」优雅虚线卡片,点击立即创建第一张组卡;拖动工具到组区域空白处也会自动新建组卡。
- 高颜值防误触拖拽与垃圾桶联动:彻底废除一切悬停 ✕ 小按钮;只有将按钮明确拖入底部「工具池」时才会触发退回或解散整组;拖入工具池时激活精致的品牌紫雾面遮罩与像素级居中补偿垃圾桶动效;空白处失手松开原样安全回弹。
- 紫色虚线动态占位符:组卡内或一级栏拖拽排序时,目标位置会实时插入半透明紫色虚线框平滑让位,动画自然流畅。
- 无限常驻分隔线 chip:工具池末尾提供永远高亮、无限取用的分隔线 chip,单击直接插入一级栏末尾,亦可自由拖拽插入组卡内或栏间(遵循组头保护法则)。
- 危险操作整窗确认浮层:「恢复默认布局」配置整窗覆盖的双重确认浮层,明确告知将解散的自定义组卡数量,杜绝手滑误操作。
- 二级栏常驻齿轮直达:截图时展开二级成员栏,点击右侧常驻齿轮即可秒级直达本设置分页。
15.6 使用统计
入口:设置 → 使用统计。四项计数及计数时机:
| 计数项 | 什么时候 +1 |
|---|---|
| 截图次数 | 保存到文件 / 复制到剪贴板 / 创建贴图 / 长截图成品,各计一次 |
| AI 对话次数 | 识图、联网深度分析、追问,每收到一次完整回答计一次 |
| OCR 次数 | 截图 OCR、重新识别、贴图复制文本、贴图文本提取、Alt 快速选词首次识别 |
| 翻译次数 | 译文成功返回计一次 |
计数口径(重要):成功完成才 +1,取消 / 失败 / 无结果都不计;四类互不重叠(翻译内部会跑一次 OCR,那次只算翻译、不计入 OCR);AI 联网搜索的内部查询词生成不计;贴图 OCR 的后台预热(用户未主动要求识别)不计。
界面:一张卡片五段式——累计概要 + 「7 / 30 / 90 天」分段切换 + 一键清空;等宽四联大数值(每格下方显示「近 N 天 +M」的增量);堆叠柱状趋势图(鼠标悬停显示当日四项明细);四色图例;累计构成占比条。
存储:按天分桶保留最近 90 天,超期自动裁剪;内存计数为唯一真相,自增后 1.5 秒节流写盘;不参与云同步、不随导出、不被恢复默认清零。清零方式只有「清空」一个入口,且不可恢复。
15.7 关于页
| 内容 | 说明 |
|---|---|
| 版本信息 | 当前版本号 |
| 检查更新 | 手动触发更新检查 |
| 自动检查更新 | 开关(默认开启) |
| 更新日志 | 可展开的历史更新记录(内嵌在程序里,离线可查) |
| 恢复默认设置 | 把 settings.ini + actions.ini 整体写回出厂默认并立即生效 |
「恢复默认设置」的三个注意点:开机自启以本机注册表的真实状态为准、不参与重置;使用统计不会被清零;截图历史不会被删除。
15.8 托盘菜单与系统集成
托盘右键菜单共 11 项:截图 / 贴图 / 显示贴图 / 截图历史 / 保存目录 / 使用统计 / 主题颜色 / 设置 / 管理员模式 / 重新启动程序 / 退出。
几条设计细节:
- 托盘图标主题感知:浅色主题用深色图标,深色主题用浅色图标;
- 状态由图标表达:例如「显示贴图」用眼睛(品牌紫 = 可见)与闭眼(弱灰 = 已隐藏)区分;「管理员模式」用品牌紫表示已开启;
- 「重新启动程序」不弹 UAC:它让子进程直接继承当前进程的令牌,所以管理员态重启后还是管理员态,普通态亦然。
开机自启动:普通模式在注册表的标准启动项里写入一条记录;管理员模式开启时自动改走计划任务并以最高权限运行——这样开机时不需要每次弹 UAC。
管理员模式解决三类场景:
| 场景 | 普通权限 | 管理员模式 |
|---|---|---|
| 全局热键在任务管理器 / 磁盘管理 / 设备管理器上触发 | ❌ | ✅ |
| 读取以管理员运行的程序的无障碍树(元素检测) | ❌ | ✅ |
| 「选中文本贴图」抓取管理员程序的选区 | ❌ | ✅ |
开启方式有两种(设置页开关、托盘菜单),共用同一套决策逻辑:落盘设置 → 弹出 UAC 提示 → 你确认 → 以管理员权限启动子进程 → 旧实例退出、新实例接管。开启后的开机自启自动改走计划任务,开机不再弹 UAC。关闭时清掉计划任务,然后以普通权限重启。
UAC 被拒绝或提权失败时,一律回滚设置,当前进程继续正常运行。所以界面上显示的权限状态,永远等于进程的真实权限。前置要求:你的 Windows 账户必须属于管理员组。
主题与视觉:浅色 / 深色 / 跟随系统三态,切换入口在设置页与托盘菜单。主题感知范围包括托盘图标、所有窗口、贴图底色、Markdown 字色、状态栏反馈色、图表配色。DPI 采用逐显示器感知,多显示器混合 DPI 与屏幕旋转都支持。
自动更新:客户端在启动 6 秒后后台静默拉取版本清单(可在设置里关闭);网络失败完全静默(不弹窗、不打扰);发现新版本弹出更新窗口,展示新版本号、发布日期、更新日志;点「立即更新」后流式下载(实时显示进度与速度),下载完成提示「立即重启」,重启时自动覆盖旧文件。手动检查在「设置 → 关于 → 检查更新」。
运行日志:入口在托盘菜单,是一个黑终端风格的独立窗口,支持实时刷新、级别过滤、搜索、复制、导出、清空、跟随最新。日志在内存里保留最近约 2000 条(环形缓冲),所有构建都有;写入文件只在开发构建中启用——普通用户不需要日志文件占空间,但出问题时需要能立刻看到最近的记录。
15.9 性能:什么时候会慢
yuSnip 在性能上有几处刻意的设计,理解它们有助于判断「什么时候会慢」。
| 策略 | 说明 |
|---|---|
| OCR 懒加载 + 空闲回收 | 启动不预热;连续 10 分钟不用则释放;再用时重建 |
| 统计节流写盘 | 内存计数为唯一真相,1.5 秒节流合并连续操作 |
| 历史写入异步化 | 位图先同步克隆再交后台线程编码写盘 |
| 空闲内存收缩 | 在空闲边界做一次压缩式回收,避免长期运行后碎片堆积 |
| 首帧平滑呈现 | 窗口在首帧真正就绪前处于隐藏状态,避免看到白框抢跑 |
「什么时候会慢」的三种情况:相隔很久之后第一次用 OCR 或智能抠图(离线深度模型首次加载到内存,用毕后 10 分钟自动释放);元素检测遇到响应极慢的应用(程序有超时保护,会先让遮罩可用);长截图拼接超大内容(受合成上限保护,超限直接拒绝而不是卡死)。
15.10 设置页通栏搜索与命令浮层
设置窗口标题栏下方配备了全新的独立通栏搜索栏(快捷键 Ctrl+F):
- 通栏极简外观:与顶部标题栏同宽通栏无圆角设计,获得焦点时底部点亮 2px 品牌紫高亮底线;
- 卡片式命令浮层(Popup):键入字符即刻呼出悬浮搜索结果浮层,搭配多层柔和立体投影与背景半透明压暗遮罩(
SearchScrim); - 多维度加权打分算法:标题前缀匹配(权重 100) > 标题子串(权重 80) > 关键词包含(权重 60) > 拼音简拼(权重 50) > 描述内容(权重 30);
- 支持多词空格 AND 匹配与纯拼音简拼:支持输入多个关键词(空格分隔,必须全部匹配);支持纯拼音声母简拼(例如输入
zt秒级定位「外观主题」、输入kj直达「开机自启」、输入gjl直达「自定义工具栏」); - 键盘无缝跳转导航:支持键盘 ↑ ↓ 上下循环高亮选中结果,按 Enter 键自动平滑跳转至对应分页,并在目标设置卡片上播放两轮微光波浪闪烁动效提示焦点;
- 支持二级工具栏项与细分设置定位:搜索覆盖所有设置字段与二级工具栏抽屉项,精准直达。
15.11 会话收尾加固与遮罩自愈看门狗
为杜绝极端异常场景下截图遮罩未能干净注销导致的鼠标事件被拦截现象,yuSnip 构筑了四道自愈安全防线:
- 多段原子级收尾生命周期:将截图会话关闭拆分为「立即隐藏视觉层 → 释放鼠标与全局输入捕获 → 异步回收渲染纹理与内存压缩」三段独立流程,确保鼠标控制权毫秒级归还系统;
- 全屏无响应遮罩自愈看门狗:后台定期巡检桌面顶层窗口句柄,若发现存在残留的孤儿截图遮罩,立即强制解绑并销毁;
- 自带现场诊断探针脚本(
截图工具诊断.bat):当用户怀疑存在热键冲突或系统钩子被第三方抢占时,可随时运行诊断探针输出排查报告。
云同步与配置迁移
16.1 三种方式
| 方式 | 位置 | 说明 |
|---|---|---|
| Google Drive | 云端 | OAuth 授权,用户无需填任何凭据 |
| WebDAV | 云端 | 标准协议,用账号密码 |
| 本地 JSON 备份 | 本地 | 导出 / 导入单个文件 |
同步范围:主设置 + 动作脚本及全局热键 + 窗口内置快捷键。
不同步:使用统计、截图历史、开机自启的注册表状态。
16.2 「密钥与凭据」开关
页面顶部有一个独立开关:
| 档位 | 云端快照内容 |
|---|---|
| 同步(默认) | 包含 AI 服务商密钥、翻译密钥、WebDAV 账号密码 |
| 不同步 | 剔除上述凭据,只同步偏好设置与快捷键 / 动作 |
三条必须知道的口径:
- 只作用于云端。本地导出 / 导入始终是全量明文,不受这个开关影响;
- 关闭后需要重新上传。开关只决定「下次上传」的范围,云端已有的历史文件不会被自动改写——界面会显示琥珀色提示,需要你再点一次「上传到云端」才会覆盖掉旧文件里的密钥;
- 恢复时按服务商 ID 匹配回填本机原值(不是按索引)。这很重要:两台机器上服务商列表顺序不同时,按索引回填会把 Key 配到错误的服务商上。
16.3 Google Drive
授权流程:OAuth2 PKCE,用户无需填写任何凭据。
| 操作 | 说明 |
|---|---|
| 登录 | 点「登录 Google Drive」→ 自动打开系统浏览器 → 在 Google 页面授权 → 返回应用即完成连接 |
| 上传到云端 | 先把设置补存一次磁盘(包括未失焦的输入框内容),再把配置打包上传;云端已有同名文件则覆盖更新 |
| 从云端恢复 | 下载 → 逐段解包 → 还原配置(本机登录态按开关回填,不被旧值覆盖)→ 立即生效,无需重启 |
| 退出登录 | 吊销授权,清除本机存储的令牌、邮箱、头像等信息 |
连接状态显示:已连接时显示绿点指示灯 + 用户头像 + 邮箱 + 上次同步时间;未连接时显示灰点 + 登录按钮。
16.4 WebDAV
使用标准 WebDAV 协议,认证方式是用户名 + 密码(或应用专用令牌)。
| 字段 | 说明 | 示例 |
|---|---|---|
| 地址 | 服务根地址(不含文件名) | https://dav.example.com/dav/ |
| 用户名 | 账号 | user@example.com |
| 密码 | 密码或应用专用令牌 | •••••••• |
| 文件名 | 云端配置文件名 | yuSnip-config-v1.json |
| 操作 | 说明 |
|---|---|
| 测试连接 | 发送一个查询请求验证地址与凭据(超时约 10 秒) |
| 上传到云端 | 先用 PUT 写入(超时约 30 秒) |
| 从云端恢复 | 用 GET 下载 → 逐段解包 → 立即生效 |
常见错误码:
| 状态码 | 含义 | 处理 |
|---|---|---|
| 401 | 认证失败 | 检查用户名 / 密码 |
| 403 | 禁止访问 | 检查该目录的权限 |
| 404 | 路径不存在 | 检查地址是否写全(注意末尾斜杠) |
| 409 | 目标目录不存在 | 先在云盘里建好目录 |
| 507 | 服务器存储空间不足 | 清理云盘空间 |
使用坚果云一类服务的提示:这类服务通常要求使用应用专用密码而不是登录密码。请在该服务的设置里生成应用密码后填入「密码」字段。
16.5 本地备份
| 操作 | 说明 |
|---|---|
| 打开目录 | 在资源管理器里打开配置目录 |
| 导出配置 | 弹出保存对话框,把三份配置打包成单个 .json 文件 |
| 导入配置 | 从 .json 恢复三份配置 → 立即生效 |
⚠️ 本地导出始终是全量明文,包含所有密钥。分享备份文件前请先清理。
关于「恢复后为什么不用重启」:三个恢复入口(Google Drive / WebDAV / 本地备份)成功后走的是同一套流程——刷新配置缓存 → 重建各设置页的内存草稿并刷新列表 → 比对主题变化并按需换肤 → 如果覆盖了动作表则重新注册全局热键。
向后兼容:如果备份文件缺少版本字段,会被视为旧版,只恢复设置段,动作与快捷键保持本机不动,并如实提示「旧版备份不含动作与快捷键」。
16.6 字段级的同步规则
① 恒不上传的字段(导出时剔除,恢复时也剔除云端值并回填本机现值):截图保存目录(机器特定路径)、全部 Google Drive 登录凭据。
② 受「密钥与凭据」开关控制的字段:AI 服务商密钥、翻译服务商 APP ID 与密钥、WebDAV 账号与密码。
③ 始终同步的字段:偏好设置、行为开关、快捷键与动作。
常见问题与排查
17.1 快捷键
Q:按 Ctrl+Alt+A 完全没反应?
排查顺序:确认程序在运行(看托盘图标)→ 打开「设置 → 快捷键与动作」确认该动作还在、热键还在 → 有些输入法、下载工具、录屏软件会抢占 Ctrl+Alt+ 系列热键,试着换一个组合 → 如果你正在某个全屏程序里,试试切出来再按。
Q:为什么在任务管理器 / 磁盘管理里快捷键没反应?
系统级窗口(任务管理器、磁盘管理、设备管理器等)需要更高权限。解决办法:开启管理员模式(设置 → 通用与存储 → 管理员模式,或托盘菜单)。
Q:中文输入法开着的时候快捷键会失效吗?
不会。yuSnip 的截图窗口与贴图窗口会主动解除输入法关联,所以中文模式下按键不会被吞;而文字标注编辑时会重新建立关联,中文输入照常。
Q:我把热键清空了,还能用吗?
可以。动作仍然存在,你仍然可以通过命令行调用(yuSnip.exe -a "动作名"),也可以随时在设置里重新绑定热键。
Q:单字母快捷键(比如按 B)没进画笔?
标注工具默认使用 Shift+B 这种组合形式,目的是防止单字母误触。可以在「设置 → 快捷键与动作 → 内置快捷键」里重新录制。
17.2 截图
Q:截图出来的画面不是我按下热键那一刻的?
正常行为就是「按下热键那一刻」——程序会在会话开始时冻结一帧全屏画面,之后所有交互都在这一帧上做。
Q:元素检测识别不到我需要的东西?
可能的原因:检测模式不对(确认为「检测元素」或「自动」);触发延时太长(鼠标停下后要等这么久才检测,调小一点);移动幅度太大(你的微调被当成「没移动」,调小一点);目标应用不导出无障碍信息(自绘界面的应用常见,这是应用侧限制,无法绕过);目标程序以管理员权限运行(切换到管理员模式);需要更细的层级(未起框时滚动滚轮钻取)。
Q:辅助线不出现?
检查「截图辅助线」档位:「关闭」永不显示;「开启」需要按住 Alt;「始终显示」常亮。另外,如果当前没有识别到任何窗口或元素,起框前是不会画参考线的(只保留中心准星)。
Q:放大镜挡住了我要看的地方?
放大镜会智能避让光标附近的工具栏与提示。如果仍然挡,可以先把鼠标移到别处再移回来,或者用 W/A/S/D 微调(放大镜会跟着移动)。
17.3 标注
Q:为什么我画不上去 / 好像「画过的地方不能再画」?
这是已修复的问题(现在工具激活时按下永远是新画一笔)。如果你遇到这个现象,请更新到较新版本。
Q:怎么修改已经画好的图形?
按住 Ctrl 再点它。选中之后可以直接拖动手柄调整大小,也可以用方向键微移,按 Delete 删除。
Q:Ctrl+Z 一次退了很多步?
这是有意的:一段连续的方向键步进或滚轮微调被合并成一条撤销记录。如果你想要更细的粒度,中途按一下别的键「收口」即可。
Q:双击截图后,图上多了一个点 / 一个空的文字框?
这是历史上的首击误触问题,已修复。如果你遇到,请更新版本。
Q:橡皮擦把我画的全部删了?
橡皮擦(Shift+E)的语义就是清除全部标注。局部删除请用「Ctrl 点选 + Delete」。不过橡皮擦本身是可以撤销的。
17.4 贴图
Q:贴图挡住了下面的窗口怎么办?
两种办法:按 Ctrl+P 开启鼠标穿透(点击直达下方窗口,边框变绿);或者直接拖走。
Q:贴图缩放的时候会不会闪?
正常情况下不会,yuSnip 的贴图缩放采用「窗口矩形不动、只改内容层」的机制,全程零闪烁。如果你遇到闪烁,可能是在Markdown 贴图的高度还未确定完成的那个极短窗口期内,等渲染完成后再缩放即可。
Q:我贴在桌面上的贴图全都不见了?
按 Shift+F3 试试——很可能是被「隐藏所有贴图」收起来了。
Q:关闭贴图后还能找回来吗?
可以,前提是截图历史收集是开启的:打开截图历史窗口找到那条记录点「贴到屏幕」;或者用动作「恢复上次关闭的贴图」,连按可以一张张往回恢复。
Q:为什么贴图复制 / 另存为的时候没有那圈灰阴影?
贴图默认不烘阴影(因为贴图窗口自带窗体阴影 + 阴影色承担状态指示)。如果你想要带阴影的成品图,有两个办法:在截图时勾选「阴影」然后直接从那次截图保存或复制;或者在截图时勾选「阴影」后直接生成贴图——这样从它复制或另存为会得到带阴影的成品。
Q:为什么我按 F3 贴出来的图不是原图?
可能的原因:你从资源管理器复制的图片文件(yuSnip 会读取原始文件,这反而是全分辨率,不是问题);剪贴板里其实没有图片、只有文字(那会被贴成文字 / Markdown / 颜色贴图);开启了「选中文本贴图」而当前有选中的文字(会优先贴选中文字)。
Q:开启「选中文本贴图」后,剪贴板内容被改掉了?
这是该功能的已知副作用(它需要模拟一次复制来抓取选中文字)。程序会尽力还原剪贴板,但如果是位图句柄类内容则不会还原。建议:剪贴板里有重要内容时不要使用它。
17.5 OCR
Q:第一次用 OCR 好慢?
正常。OCR 引擎是懒加载的——启动时不加载,第一次使用时才初始化。之后连续使用会保持热态,速度很快。但如果你超过 10 分钟没用,它会自动释放以节省内存。
Q:识别出来的文字有断行?
用「智能排版」(需先配置 AI 模型),或者手动拖拽合并行。
Q:识别不出来文字?
排查:是不是透明底的图?程序会先合成白底、再试黑底,但如果底图内容本身对比度太低就无能为力;是不是字太小?尝试放大后重新截图识别;是不是手写体或艺术字?模型面向印刷体;是不是超长图?长图走分段识别,且有段数上限,超出的部分不会被识别。
Q:为什么长截图里后半部分的文字搜不到?
因为索引里的可搜文本有 1000 字上限。密排文字大约 700 像素高就能吃满。这是存储层的限制。
Q:搜索结果里有个「米」字 / 莫名其妙的字符?
那是装饰、图标、纹理被误识别。在 OCR 结果里会保留(因为那是给你读的),但在图片翻译流程里这类行会被自动过滤。
17.6 翻译
Q:翻译提示「请先在设置中配置翻译服务 API 密钥」?
去「设置 → 语言与翻译」选择服务商并填入凭证,然后点验证按钮确认有效。
Q:填了密钥但是鉴权失败?
检查你用的是哪一把密钥。以百度为例,控制台里有两个地方能拿到密钥:「APIKey 管理」和「开发者信息」。图片翻译与文本翻译都必须用「APIKey 管理」签发的那把。如果你填成了「开发者信息」里的密钥,两者会同时报鉴权失败。
Q:翻译出来的图变小了?
因为原图体积超过了服务商接口的限制,程序自动做了压缩。解决办法:缩小选区分块翻译。
Q:翻译出来的图跟原图几乎一样?
这是「源语言与目标语言同族」的情况。程序会自动改用次级目标语言(默认英语)重发一次。检查一下「次级目标语言」是否符合你的需求。
Q:点击翻译没反应?
如果提示「正在翻译中,请稍候…」,说明这张贴图已经在翻译了——一张贴图同时只允许跑一条翻译流水线。等它完成再试。
Q:繁体中文 / 泰语 / 越南语 / 阿拉伯语翻译图片失败?
这四种目标语言不支持图片翻译(服务商的图片接口语种表较窄)。程序会在发请求前就拦截并提示,不会产生计费。改用图片→文本模式,或者选择其它目标语言。
17.7 AI
Q:AI 识图报错?
排查:服务商是否已启用;接口地址是否正确(注意是否以 /v1 结尾);API 密钥是否正确;模型名是否正确(先点「拉取模型」看看能否拉到);模型是否支持图片输入(这是最常见的失败原因);点「测试连接」看返回的延迟与模型数量。
Q:用中转服务 / 本地模型能不能用?
都可以。因为支持 OpenAI / Anthropic 两种协议,绝大多数中转服务都能接,只需注意它对多模态(图片输入)的支持情况。本地模型只要暴露了 OpenAI 兼容接口,把地址填成本地监听地址(示例:http://localhost:<端口>/v1)即可。
Q:联网搜索没有结果?
检查「联网搜索端点」是否可用。默认使用一个公共实例,稳定性取决于该实例。建议自建一个 SearXNG 实例并把地址填进去,结果更可控。
Q:OCR 智能排版提示失败?
排查:是否已配置 AI 服务商;网络是否正常;模型返回的格式是否被校验拒绝。任何一步失败都会保持原样并给出提示。
17.8 性能与资源
Q:空闲时 CPU 占用偏高?
可能的原因:热键注册失败后回退到了键盘钩子方案——这种情况下全系统每次按键都会唤醒 yuSnip。解决:去设置里换一个没被占用的热键。
Q:内存占用越来越高?
yuSnip 会在空闲边界做一次内存压缩回收。如果你观察到持续增长,可以检查是否开启了「截图自动识别文字」(会加载 OCR 引擎)、检查历史收集的容量上限设置,或打开运行日志查看是否有异常。
Q:程序启动很慢 / 截图启动慢?
第一次启动会释放内嵌资源,比之后慢很多,这是正常的。截图正常情况下从按下热键到遮罩出现很快;如果你觉得慢,检查是否有元素检测的等待(某些应用的无障碍接口很慢,程序有等待上限,超时会先显示遮罩)。
17.9 数据与配置
Q:怎么彻底卸载 / 清理干净?
退出程序(托盘 → 退出)→ 删除 %APPDATA%\yuSnip\ 整个目录 → 如果是管理员模式,检查并删除计划任务 → 删除程序文件本身。
Q:配置怎么迁移到另一台机器?
三种方式:用云同步(Google Drive / WebDAV);用「导出配置」生成一个 JSON 文件,拷到新机器后导入;直接复制 %APPDATA%\yuSnip\ 目录。注意:保存目录是机器特定路径,不会同步,换机器后需要重新设置。
Q:云同步后密钥没同步过去?
检查「密钥与凭据」开关:设为「不同步」时密钥不会上传到云端;关掉这个开关之后,需要再点一次「上传到云端」才会覆盖掉云端旧文件里的密钥。
Q:本地导出的备份文件安全吗?
不安全。本地导出始终是全量明文(包含所有密钥),不受「密钥与凭据」开关影响。分享或上传前请先清理。
Q:使用统计为什么清不掉?
「使用统计」不会被「恢复默认设置」清零,这是刻意的设计——统计是本机行为痕迹,不该被配置重置带走。唯一的归零入口是设置 → 使用统计 →「清空」,且清空后不可恢复。
Q:截图历史怎么彻底清空?
关闭「截图历史收集」→ 打开截图历史窗口点「清空历史」→ 如果想连文件一起清掉,退出程序后删除 %APPDATA%\yuSnip\history\ 目录。
17.10 自动化调用
Q:命令行调用没反应?
排查顺序:权限级别(如果 yuSnip 以管理员模式运行而你的调用方是普通权限,消息可能送不到——让两者同级权限);动作名是否正确(动作名大小写敏感,建议从动作卡片上复制完整命令);主实例是否在运行(没在运行时会先启动它再执行,会有一点延迟);返回码(0 = 作为主实例成功执行,2 = 已转发给已有实例)。
Q:从计划任务调用 yuSnip 没效果?
计划任务默认可能以最高权限运行,导致与普通权限的常驻实例不同级。在计划任务的属性里把「使用最高权限运行」的勾选状态调整为与 yuSnip 常驻实例一致。
Q:怎么在 Quicker / StreamDeck 里用 yuSnip?
打开「设置 → 快捷键与动作」→ 找到你要用的动作 → 点击它的脚本摘要行即可复制完整命令 → 把命令粘贴到第三方工具的「运行命令」字段里。
17.11 智能抠图与离线模型
Q:智能抠图提取时发丝边缘会有白边或残留背景吗?
不会。yuSnip 人像精细抠图搭载官方原生 FP32 高精度 MODNet 模型,结合了低切掩码截断与 SmoothStep 平滑拉伸,将细碎噪点与过渡灰阶彻底清洗,即便在深色或复杂背景上粘贴也完全纯净。
Q:为什么抠图后贴图背后是紫灰色的微晶格?
这是 yuSnip 独创的「品牌紫韵微晶格」透明底板,用温润的弱对比紫色微晶格承托透明镂空区域,让你能清晰分辨哪些区域已被抠空。保存或复制到剪贴板时微晶格绝不会被导出,输出的始终是纯净的 32 位 Alpha 透明通道。
Q:放大镜取色快捷键 C 和序号 Shift+C 冲突吗?
不冲突。2026-09-12 起已彻底解耦:单按 C 专职用于放大镜取色并完成截图(单按 Shift 切换 HEX / RGB 格式);而 Shift+C 专职用于激活序号标记工具,两者互不干扰。
Q:极端情况下如果鼠标左键点击异常怎么办?
程序内置会话收尾看门狗,会自动强制清除残留句柄;如遇第三方软件钩子异常,可右键托盘图标选择「重新启动程序」(以当前权限原地秒级重启并重建输入绑定),或运行根目录下的 截图工具诊断.bat 进行环境巡检。
默认值速查
| 项目 | 默认值 |
|---|---|
| 截图热键 | Ctrl+Alt+A |
| 快速贴图热键 | F3 |
| 截图并 OCR 热键 | Ctrl+Alt+O |
| 截图翻译热键 | Ctrl+Alt+F |
| 显隐所有贴图热键 | Shift+F3 |
| 自动检测模式 | 仅窗口 |
| 元素检测触发延时 / 移动幅度 | 10 ms / 20 px |
| 截图辅助线 / 功能提示 | 开启(按住 Alt)/ 开启 |
| 选区圆角 / 描边 / 阴影 | 0 / 0 / 关闭 |
| 标注撤销上限 | 100 步 |
| 模糊 / 马赛克强度范围 | 1 – 30 档 |
| 画笔透明度 / 硬度 | 100% / 100% |
| 画笔笔锋模式 / 强度 / 平滑 / 最细比例 | 按速度 / 35% / 40% / 25% |
| 文字字号 / 字体 | 24 / Microsoft YaHei UI |
| 贴图默认阴影 | 开启 |
| 贴图缩放范围 | 0.2x – 工作区适配上限 |
| 贴图双击动作 | 关闭贴图 |
| 文本贴图版宽上限 | 屏幕宽 × 2/3 |
| OCR 输出方式 | 打开编辑窗口 |
| OCR 静默提示位置 / 时长 | 中下 / 5 秒 |
| OCR 引擎空闲回收 | 10 分钟 |
| 翻译图片模式 | 图片→文本 |
| 翻译目标语言 / 次级目标语言 | 简体中文 / 英语 |
| 翻译请求超时 / 图片体积上限 | 30 秒 / 编码后 5 MB |
| 极简浮窗位置 | 跟随鼠标 |
| 翻译编辑窗口 | 760 × 520 |
| AI 识图触发方式 / 请求超时 | 直接识图 / 60 秒 |
| AI 结果窗口 | 480 × 640 |
| 联网搜索深度分析 | 关闭 |
| 长截图合成上限 | 28888px / 2.5 亿像素 / 1GB |
| 长截图最小选区 | 32 px |
| 长截图全景预览窗 | 开启 |
| 历史收集 / 自动识别文字 | 关闭 / 关闭 |
| 历史条数上限 / 容量上限 | 200 条 / 800 MB |
| 历史可搜文本上限 | 1000 字 |
| 使用统计保留 | 90 天 |
| 更新检查延迟 | 启动后 6 秒 |
| 主题 / 开机自启 / 管理员模式 | 跟随系统 / 关闭 / 关闭 |
如果你只记住三件事:
Ctrl+Alt+A截图,选区内双击 = 复制并完成;- 标注工具用
Shift+字母,要改已画的东西按住Ctrl点它; F3贴图,Ctrl+Alt+O识别文字,Ctrl+Alt+F翻译——三个键覆盖八成日常场景。
如果你要深入:第 14 章让你把 yuSnip 变成自己工作流里的一环;第 13.7 节是所有快捷键的完整清单;第 17 章是遇到问题时的第一落点。
祝使用愉快。