Skip to content

v1.6.0 · 滚动长截图接线

Choose a tag to compare

@YJLZSL YJLZSL released this 25 Sep 16:59
· 15 commits to main since this release

新增

  • 滚动长截图。当前可滚动区域可以整页拍成一张长图:界面每滚一屏,
    Rust 抓一帧,全部滚完再按位移拼接。

    这个功能悬了很久 —— capture.rs 里的位移估计(estimate_scroll_offset)、
    拼接(stitch)、PNG 编码(save_png)早就写好且有测试,
    一直缺的是「界面滚一屏 → Rust 抓一帧」那条往返协议。
    文案里甚至已经承诺过它(帮助页写着"截图工具里能拼接长图")——
    承诺跑在实现前面,这次补上。

    几个实现上的选择:

    选择 为什么
    由界面驱动滚动,Rust 只抓+拼 滚哪个元素、滚多少,只有界面知道(读文章的滚动、
    表格的横竖滚各不相同),Rust 猜不准
    每滚一屏等两帧再抓 只等一帧有概率抓到"半截滚动中"的模糊画面
    位移估计失败时用整帧高兜底 宁可多留内容也不要错位 —— 多留看得见,错位看不出来
    兜底了几处如实报给用户 界面上会提示"有 N 处接缝是靠估的,可能不齐"
    帧数上限 60 兜底:别把界面卡死

验证

层 覆盖
位移估计 / 拼接 / PNG 编码 Rust 测试(早就有)
往返链路(开一轮 → 抓帧 → 拼接落盘) 烟测 4 步:能开一轮 / 一帧会被拦下 /
两帧能拼出并落盘(实测 119px · 2 帧)/ 输出路径在截图目录下
真实抓屏内容对不对 ⚠️ 未覆盖 —— 抓的是真实屏幕,烟测跑时前台是谁不确定,
断言"拼出来对不对"会变成看运气的测试。这一项属于人眼验收

| 总计 | 烟测 109 / 109 · 门禁五道 |

还没做的办公功能

文档 docs/05-office-toolbox.md 规划了 15 节,已实现的只有笔记、表格、截图(单帧+长图)。
完整核对表见 local-docs/reference/29-office-features-status.md,
大致还有:截图标注与历史、OCR、剪贴板历史、看板、日历、待办、文件管理、
标签系统、一键全量导出、自定义快捷键、教程系统。

这些不是"没规划",是规划了还没做。逐项状态在核对表里。