编辑方框示意图

粘贴一张Unicode方框示意图,用点击和拖动(或完全支持键盘操作的表单)编辑它,再导出整洁的文本。

粘贴一张示意图

粘贴由 Unicode 制表符绘制的文本,或加载示例。

一个能正确处理全角字符宽度的方框示意图编辑器

这个工具读取由Unicode制表符(┌┐└┘│─├┤┬┴┼)绘制的示意图 —— 常用于UI线框图和简单架构草图的嵌套矩形方框 —— 让你在GUI中选择、移动、调整大小并重新编辑每个方框的文本,然后将结果导出为纯文本。

它的网格模型按显示列(而不是UTF-16码元)来定位每个单元格。日文、中文的全角字符,或表情符号(包括由零宽连接符组成的多码点序列),会被正确地占用两个网格列,而不是一个 —— 因此粘贴一张混合了ASCII字符与中日文文本或表情图标的示意图时,边框不会在第一个全角字符之后错开一两列。

它只识别嵌套的矩形方框 —— 不支持手绘线条、箭头、圆形或其他一般性的ASCII图形。如果你需要通用的绘图工具,这不是合适的选择;但如果你需要重新排布从设计文档或截图转录中粘贴过来的「方框+标签」线框图,这正是它的用途。

为什么你的示意图不会离开你的设备

这里的隐私是结构性的,而不是一句承诺。因为没有可以上传的服务器,所以根本没有上传这一步:

  • 解析、编辑和渲染全部在你的浏览器中完成。
  • 页面以静态文件的形式提供,不会发出携带示意图文本的请求。
  • 没有会把示意图编码进URL的分享链接功能。
  • 源代码公开,任何人都可以查看(MIT)。
  • 可以离线使用 —— 这只有在数据完全不离开设备的情况下才能实现。

如果你想自行验证,可以在编辑时打开浏览器的网络面板 —— 不会有任何请求携带你的示意图文本。 查看源代码。

使用方法

  1. 粘贴你的示意图

    将方框示意图文本粘贴到文本框中,或者点击"加载示例"先试用一个小例子。

  2. 选择并编辑方框

    点击画布上的方框,或从右侧列表中选取。拖动可以移动它,拖动右下角可以调整大小,也可以直接在表单中编辑文本 —— 这些操作也都可以通过数字输入框和文本框,完全用键盘完成。

  3. 添加或删除方框

    使用"添加方框"绘制一个新的空方框,或删除当前选中的方框。移动和调整大小都不会自动避免与其他方框重叠 —— 就像普通的绘图画布一样,后画的会直接覆盖先画的。

  4. 导出结果

    复制纯文本,下载为.txt文件,或使用"复制给AI"获取一份可直接粘贴到AI对话中的前后对比修改说明(见下文)。

常见问题

我的示意图会被上传到什么地方吗?

不会。解析、编辑和渲染全部在你的浏览器中完成。没有服务器组件,也没有分享链接功能,所以你的示意图文本没有任何离开设备的途径。

为什么全角字符和表情符号的宽度在这里很重要?

中文、日文字符,以及大多数表情符号,在等宽字体中渲染时的显示宽度是拉丁字母的两倍 —— 但在底层文本中,它仍然只是一个字符(对某些表情符号来说,是一个由多个码点组成的序列)。逐个码元处理文本的解析器会算错这个宽度,导致全角字符之后的方框边框少算一列。这个工具会计算每个字符的实际显示宽度,把占两列宽度的字符分配给两个网格列,因此无论示意图内容是什么,列都不会错位。

手绘线条、箭头或圆形会怎么样?

这个工具只检测和编辑由标准制表符(┌┐└┘│─├┤┬┴┼)构成的封闭矩形区域。其他内容 —— 斜线、箭头、圆形、一般性的ASCII图形 —— 会被当作普通文本内容原样保留,但不会成为可选择、可移动的"方框"。

移动或调整方框大小时会避免与其他方框重叠吗?

不会,这是故意的设计。这只是一个普通的网格画布:无论你最后绘制或移动哪个方框,它都会直接覆盖所落到的单元格,就像基础绘图工具一样。如果两个方框最终重叠了,重新绘制或移动其中一个即可解决。

如果我没有做任何编辑,导出的文本会和粘贴进来的内容逐字节一致吗?

不一定逐字节一致(例如每行末尾的空白总是会被清除)—— 但重新解析导出的文本,会找到与你粘贴时相同位置、相同内容的方框。这个工具是一个完整的网格画布,而不是保留原始行内容的补丁式编辑器。

"复制给AI"是做什么用的?

它会把你粘贴时的示意图文本,以及当前的示意图文本,作为两个带标签的文本块(before/after)一起复制,可以直接粘贴到AI对话中作为修改说明。这是为一个特定的工作流设计的:把一个UI线框图(用嵌套方框勾勒的真实界面布局)粘贴进来,在这里编辑,再把前后对比交给AI作为修改差异。

可以不用鼠标操作吗?

可以。从列表中选择方框,以及通过画布旁的表单字段移动、调整大小、编辑文本和删除方框,全部都可以完全用键盘完成。画布上的拖动操作只是叠加在相同功能之上的鼠标便捷方式。

可以离线使用吗?

可以。它是一个PWA。首次访问后会被缓存,因此无需网络连接也能使用。你也可以将它安装到主屏幕。