界面尺 —— 自动量出真实运行界面上的元素尺寸(Windows 界面度量工具)
自动量出真实运行界面上的元素尺寸
一款 Windows 界面度量工具:移动鼠标自动框出光标下窗口与内部面板的真实边界, 按住 Ctrl 下钻到控件级,拖拽框选时自动吸附附近边缘。窗口边界已去阴影, 支持混合 DPI 多显示器。安装包免费下载,窗口级能力直接可用,元素级拾取 ¥58 买断解锁。
不只是截图,是把边界量准
对着正在运行的界面,直接拿到系统认定的窗口、面板与控件边界——不用目测对齐,也不用装量尺。
悬停即得元素边界
光标停在目标上,就从光标位置自动生长出所在面板的矩形——不用先拖框,停一下框就出来了。结果标注为「推测」,拿不准时自动退回窗口级,不会硬给一个假框。
窗口边界已去阴影
窗口矩形取自 DWM 的扩展边框,不含 Windows 为窗口预留的不可见 resize 边,也不含投影。拿到的框就是肉眼看到的框,别再拿目测去凑。
按住 Ctrl 下钻控件级
在窗口和面板之下继续深入,滚轮沿控件祖先链逐层向外、向内切换。层级选错了不用重来,滚一格就回去。
拖拽自动吸附边缘
自由框选时自动贴到附近最强的块状边界(不是逐像素梯度),手抖偏出的那两三个像素不会带进结果。
混合 DPI 多显示器
每块显示器各自一个覆盖层,主屏 100%、副屏 150% 也不会错位——这是多屏下唯一做对的方式。
一键进剪贴板
左键单击,选区直接写入剪贴板,粘进设计稿、开发文档或聊天窗口即可;不需要先存文件再找路径。
量界面尺寸的四种做法,差别在边界从哪来
问题从来不是「能不能框出一个矩形」,而是那个矩形凭什么算准。 下面四种做法的边界来源完全不同,误差也就出在不同的地方。
| 做法 | 边界从哪来 | 管什么用 | 会栽在哪 |
|---|---|---|---|
| 设计稿自动标注类工具 | 读设计文件的图层树 | 只对设计稿有效 | 量不到正在运行的界面——它的输入是设计稿,不是屏幕 |
| 屏幕标尺 / 取色工具 | 你自己拖出来的那个框 | 任意屏幕内容 | 对齐误差就是测量误差,人手下限约 1–3px;不可见 resize 边与窗口阴影会被一起量进去 |
| 像素边缘检测自动识别 | 图像算法从画面里猜出的边 | 边界清晰、底色单纯、矩形规整的界面 | 看到的是「视觉边缘」而非「真实边界」:无边框容器、同色相邻的两个元素会被连成一片 |
| 读取系统给出的边界(界面尺) | Windows 自己认定的窗口与控件矩形 | 有窗口树 / 控件树的界面(绝大多数桌面软件) | 自绘界面(游戏、以 canvas 绘制的浮层)拿不到元素树,此时收敛到窗口级,不硬给假框 |
打个比方:屏幕标尺像拿尺子去量一张照片,量得准不准取决于你手稳不稳; 像素边缘检测像照着照片描边,同色的两块会连成一片; 界面尺 则是直接问 Windows「这个窗口和这个控件的矩形是多少」——不问像素,问系统。 换句话说,前三种做法都是在「量画面」,只有最后一种是在「问系统」。 说白了,判断准不准只需问一句:你框出来的那个矩形,是系统给的值,还是你目测对齐上去的?
本机实测(不是估算值)
- 悬停自动识别面板:6 组合成用例自测全部通过,边界误差 ≤ 1 像素
- 窗口边界取自 DWM 扩展边框,不含不可见 resize 边与投影,无需手动校准
- 热键冲突实测:Ctrl+Alt+A 在多数机器上已被占用,程序会自动顺延(实测常落到 Ctrl+Alt+S)
- 安装包线上实测下载约 3 MB/s,49.3 MB 全量约 15 秒
四步开始测量
装完按一次热键就进入工作状态,没有需要先配置的工程。
下载安装
免费下载 Windows 安装包,双击按中文向导一路下一步。per-user 安装、不弹 UAC,装完默认开机自启(靠热键工作的工具不自启等于装了没反应)。
按热键唤起
默认 Ctrl+Alt+A。若被别的软件占用会自动顺延到没被占用的组合(实测常落到 Ctrl+Alt+S),真实生效的键显示在托盘气泡里,不会静默失效。
停一下,或拖一下
光标停在目标上自动出框;要自定义范围就左键拖拽,松手自动吸附到附近真实边缘。滚轮在层级之间切换。
点一下取走
左键单击即复制到剪贴板。窗口级、去阴影、拖拽吸附免费用;元素级拾取在软件内扫码 ¥58 解锁,付款后自动生效。
买之前你可能想确认的几件事
越是靠工具吃饭的人,越在意「不好用的时候会怎样」。
降级只锁「元素级拾取」,窗口级截图、去阴影、拖拽吸附全部保留,装完当天就能用上
扫码是在手机上完成的;即使付款时电脑上的程序已关掉,重新打开会自动认领那笔订单并解锁
激活码与电脑绑定,换机或重装系统凭机器码免费重发,不用重新购买
识别与截图都在本地,画面只写入剪贴板、不上传;授权校验也是离线的
元素识别失败会收敛到窗口的 DWM 边界,给的是窗口级的框,绝不会给出比窗口更差的框
卸载只移除程序本身,已购买的授权与机器绑定信息保留,重装即恢复已激活
界面度量常见问题
关于尺寸精度、识别范围、多屏与购买激活的常见疑问。
怎么量一个界面元素的实际尺寸?
用 界面尺:把鼠标移到目标上,程序自动框出光标下窗口或内部面板的真实边界并显示像素尺寸;按住 Ctrl 可以继续下钻到控件级,滚轮在祖先链上逐层向外、向内切换。选好后左键单击,选区即进入剪贴板。
和屏幕标尺、取色工具(如 PowerToys 屏幕标尺)有什么不一样?
屏幕标尺类工具要你自己拖出一个框、把框边对齐到元素边缘,对齐误差就是测量误差,人手下限约 1–3 像素,而且窗口的不可见 resize 边与阴影容易被一起量进去;界面尺 不去猜边界,而是直接读 Windows 给出的窗口与控件矩形,边界来自系统本身而不是目测,装完不用校准。另外,设计稿自动标注类工具只针对设计稿,量不到正在运行的界面——而这正是 界面尺 的用途。
自动识别元素尺寸是看图猜的,还是读系统数据?
界面尺 读系统数据。窗口矩形取自 DWM 的扩展边框(DWMWA_EXTENDED_FRAME_BOUNDS),控件矩形取自 Win32 子窗口树与 UI Automation,都是 Windows 自己认定的矩形,不是图像算法从像素里推出来的;悬停自动识别面板时用的是区域生长算法,结果会标注为「推测」,拿不准就退回窗口级。这一点和「像素边缘检测」类工具从根上不同:那类工具看到的是视觉边缘,遇到无边框容器或同色相邻元素会把两块连成一片。
截图会不会带上窗口阴影,导致尺寸多出几个像素?
不会。窗口边界取自 DWM 的扩展边框,不含 Windows 为窗口预留的不可见 resize 边,也不含投影,所以拿到的就是肉眼看到的那一圈。
支持多显示器吗?副屏缩放比例不一样会错位吗?
支持。每块显示器各自一个覆盖窗口,在混合 DPI(例如主屏 100%、副屏 150%)下也能正确对齐,这也是多屏下唯一做对的做法。
多少钱?怎么购买?
安装包免费下载,窗口级截图、去阴影与拖拽吸附可以直接用;元素级拾取(悬停自动识别面板、Ctrl 下钻控件)为 ¥58 买断制、永久有效。打开软件点「购买」用微信扫码支付,付款后软件自动解锁,不需要等人工发码。
所有界面都能识别到元素级吗?
不是。用 HTML 画出来的浮层(部分 Electron 应用的弹层)、以管理员权限运行的程序、以及游戏这类自绘界面,Win32 与 UI Automation 都拿不到元素树,此时程序会自动收敛到窗口边界;拿不到时给的是窗口级的框,不会给出比窗口更差的框,也可以直接拖拽框选。
会不会把我的截图上传到服务器?
不会。识别与截图全部在本机完成,抓到的画面只写入剪贴板,不经过任何服务器;授权校验也是离线的——按机器码本地算码比对,不需要联网。
免费下载 · 软件内 ¥58 解锁元素级拾取
下载安装后打开软件,点「购买」用微信扫码付款,付款完成软件自动解锁,激活码与这台电脑绑定、 永久有效。窗口级截图、去阴影与拖拽吸附在解锁前就能用。
运行时若提示「无法验证发布者」,点「运行」即可 —— 安装包未做代码签名,属已知现状。
SHA256 020089f84dbf264974451826fe0872fe3e173b8ed69af1470988b828992ceeaa
量尺寸,是为了核对「还原度」
如果量尺寸的目的就是比对设计稿与运行界面,这件事也可以直接交给我们: 涛依旧提供界面设计走查服务,用同一套边界度量方法逐屏核对间距、字号与控件尺寸, 交付问题清单与像素级修正建议。
了解界面设计走查服务 →参考来源
页面上关于边界来源与 DPI 处理的四处说法,其出处均为以下官方文档,每条引用都照抄原文、可点开逐字核对; 本页列出的自测数据,数据来源为本机实测统计(不是估算值)。
对应主张:窗口边界为什么可以做到不含阴影与不可见边框
“Retrieves the extended frame bounds rectangle in screen space.”
界面尺 的窗口矩形即取自 DWMWA_EXTENDED_FRAME_BOUNDS,而不是 GetWindowRect——后者会把 Windows 预留给 resize 的不可见边框一起算进去。
对应主张:混合 DPI 多显示器为什么必须每屏一层覆盖窗口
“Test your application on a multiple-display/multi-DPI system.”
该文档说明 per-monitor(V1 / V2)DPI 感知、WM_DPICHANGED 的用法,并明确要求在「多显示器 / 多 DPI」环境下验证——这正是每块显示器各自一个覆盖层的原因。
对应主张:为什么不用 GetWindowRect 而用 DWM 扩展边框
“In Windows Vista and later, the Window Rect now may include invisible resize borders. To get the visible window bounds, not including the invisible resize borders, use DwmGetWindowAttribute, specifying DWMWA_EXTENDED_FRAME_BOUNDS.”
这一段是上面那条引用的出处:官方明确写出 GetWindowRect 拿到的是「Window Rect」,Vista 起可能把肉眼看不见的 resize 边框一起算进来;想要「可见范围」,必须改用 DwmGetWindowAttribute 并指定 DWMWA_EXTENDED_FRAME_BOUNDS。也就是说,多出来的那几个像素是系统文档自己写明的差别,不是本程序的取舍。
对应主张:控件级矩形凭什么能拿到,而不是靠图像算法猜
“Microsoft UI Automation is an accessibility framework that enables Windows applications to provide and consume programmatic information about user interfaces (UIs). It provides programmatic access to most UI elements on the desktop.”
Windows 自带的 UI Automation 框架会以程序化方式对外提供桌面上的大多数界面元素信息——换句话说,控件矩形由系统登记并提供,程序只是把它读出来。这是「按住 Ctrl 下钻到控件级」这条能力的技术依据,也是它与「像素边缘检测」类工具最根本的分界。