Float Translate:划词翻译、OCR、文本快捷操作与自定义工作流
Float Translate是一款支持划词翻译、OCR和文本快捷操作的桌面工具。本文介绍翻译与文本快捷操作为何放在一起,以及扩展、服务、能力和工作流如何组合。
我做Float Translate的起点,是两个我一直觉得应该放在一起的软件。
一个是Bob这样的翻译工具,选中文字或截取屏幕后就能查看译文。另一个是PopClip这样的文本快捷操作工具,让搜索、复制等常用能力靠近当前文字。
它们都是先取得用户当前面对的文字,然后按需要对文字执行操作。殊途同归。
为什么翻译和文本快捷操作应该在一起
翻译本来就是文字处理的一种。用户这次选中一句话可能想看译文,下次也可能想搜索或解释。为了换一种处理方式而打开另一款软件,没有带来新的文字,只增加了一次切换。
实现这两类功能时,也会遇到许多相同问题。Float Translate需要读取其他应用里的选区,响应全局快捷键,并在合适的位置显示轻量界面。处理结束后还要回到原来的应用,完成复制、粘贴或替换。
Float Translate因此把它们放进同一个入口,也就是选中文字后出现的快捷操作栏,软件里叫作「浮动胶囊」。翻译和「解释」都可以作为能力放进胶囊,搜索等扩展能力也沿用这个入口,习惯键盘的用户则可以跳过胶囊,直接为常用能力设置全局快捷键。
功能越多,越不应该一直增加按钮
把翻译和胶囊放在一起,只解决了入口问题。用户对文字的需求依然很多。
同样是一段选中的文字,有人希望打开翻译面板比较服务,有人希望译文直接替换原文。屏幕上的文字还可能需要先做OCR,再继续处理。如果每一种顺序都做成独立功能,设置页很快就会堆满只有少数人使用的选项。
Float Translate把处理过程拆成了三类原子能力。
第一类决定文字从哪里来。文字可以来自选区或屏幕,也可以由用户主动输入。
第二类负责处理文字。例如先做OCR,再翻译,或者把内容交给AI。
第三类决定结果送到哪里。结果可以显示在面板里,也可以复制出去或替换原文。
工作流只负责选择和连接这些能力,用户不需要编写脚本、模板或表达式。少量原子能力经过不同组合,就能形成许多看起来彼此独立的功能,同时避免不断扩充软件的固定菜单。
常用功能已经组合好了
可组合不代表每件事都要从空白开始配置。高频需求已经由Float Translate组合成系统工作流,划词翻译、截图翻译和剪贴板翻译等功能可以直接分配快捷键使用。
「输入框翻译」就是一个现成的系统工作流。它会全选当前输入框中的文字,获取文本,完成静默翻译,再把译文复制并粘贴回原输入框。用户只需触发一次快捷键,不需要打开翻译面板,也不需要自己搭建这五个步骤。

系统工作流解决常见需求,自定义工作流留给每个人自己的场景。假如你经常需要处理屏幕上的题目,也可以连接OCR、自定义AI能力和结果输出。
OCR提取题目 → 自定义AI能力按照答题要求处理 → 输出答案
「AI答题」未必适合作为固定功能内置,但需要的人可以直接用现有的OCR、自定义AI能力和结果输出组合出来。换一段提示词或改变结果去向,同一套能力还可以用于完全不同的场景。
Float Translate现在能处理哪些文字任务
| 现在想做什么 | 对应功能 |
|---|---|
| 翻译网页或文档中能够选中的文字 | 划词翻译 |
| 同时查看不同翻译服务的结果 | 划词翻译面板中的多服务对比 |
| 不打开面板,直接取得选中文字的译文 | 静默划词翻译 |
| 主动输入或粘贴一段文字再翻译 | 划词翻译面板 |
| 翻译当前输入框里的内容 | 输入框翻译 |
| 翻译剪贴板中的文字 | 剪贴板翻译 |
| 查询图片或视频画面里的短词 | 光标取词翻译 |
| 翻译无法选中或复制的屏幕文字 | 截图翻译 |
| 从当前屏幕提取原文 | 截图OCR |
| 从本地图片提取原文 | 图片OCR |
| 从剪贴板图片提取原文 | 剪贴板OCR |
| 用选中的文字切换平台搜索 | 浮动胶囊中的搜索能力 |
| 快速复制文字或打开其中的链接 | 浮动胶囊中的通用能力 |
| 解释、润色或总结选中的文字 | AI能力或相应扩展 |
| 清理文字并替换指定内容 | 工作流中的文本处理能力 |
| 反复执行一套个人流程 | 自定义工作流 |
屏幕文字无法复制时,可以继续阅读怎样翻译屏幕上无法复制的文字。需要把同一段文字带到不同平台搜索时,可以查看怎样选中文字后快速切换Google、Reddit、TikTok等平台搜索。
Float Translate的能力从哪里来
Float Translate里的能力并不都固定在软件内部。扩展负责提供能力,服务保存某个账号、凭据和公共配置,用户最终调用的是服务中的具体能力。
这些能力可以进入翻译面板、OCR窗口或浮动胶囊。需要频繁调用时,还可以绑定快捷键或接入工作流。
| 层级 | 它解决什么问题 | 可以怎样组合 |
|---|---|---|
| 扩展 | 软件可以获得哪些能力 | 一个扩展可以提供翻译、OCR、语种检测和通用能力中的一种或多种 |
| 服务 | 使用哪套账号和公共配置 | 同一个扩展可以添加多个服务,分别使用不同账号或配置 |
| 能力 | 实际调用哪项功能和参数 | 同一种能力可以复制成多份,分别使用不同参数 |
例如,一个提供AI文本处理能力的扩展可以分别添加「个人」和「工作」两个服务,使用不同的账号、API Key或服务地址。某个服务中的同一种能力还可以复制成「快速」和「高质量」两份,分别使用不同参数。扩展只需安装一次,服务和能力则可以按需求配置多份。
这些能力最终仍然使用同一套入口。更换翻译服务或调整能力参数,不会改变熟悉的划词翻译路径。新能力也可以放进浮动胶囊、绑定快捷键或接入已有工作流。
扩展解决Float Translate还能获得哪些能力,工作流解决这些能力怎样组合。常见需求由系统提前组合,个人需求由用户连接现有能力。以后新增的扩展,也可以继续进入同一套入口和工作流。