新闻详情

新闻详情

首页 / 资讯中心 / 详情

Microsoft PowerToys MeasureTool 模块 DSC 配置参考:用声明式方式管理屏幕标尺

发布时间:2026/9/7 23:55:03来源:尧图网络
Microsoft PowerToys MeasureTool 模块 DSC 配置参考:用声明式方式管理屏幕标尺
Microsoft PowerToys MeasureTool 模块 DSC 配置参考用声明式方式管理屏幕标尺【免费下载链接】PowerToysMicrosoft PowerToys is a collection of utilities that supercharge productivity and customization on Windows项目地址: https://gitcode.com/GitHub_Trending/po/PowerToys本文基于 PowerToys 仓库的 DSCDesired State Configuration模块文档完整解析 MeasureToolMeasure Tool即屏幕标尺 Screen Ruler模块可通过 DSC 声明式配置的全部属性、三种接入方式PowerToys.DSC.exe 直接执行、DSC v3 配置文件、WinGet Configure以及五组实战示例。读完本文你可以将 Measure Tool 的激活快捷键、边缘检测容差、十字准线颜色等配置纳入“配置即代码”的管理流程并结合源码理解这些属性在设置模型中的落地位置。MeasureTool 模块概述PowerToys 通过PowerToys.DSC.exe命令行工具提供 DSC v3 支持使 PowerToys 各模块utility的配置可以被声明、校验和强制执行。MeasureTool 模块管理的正是 Measure ToolScreen Ruler——一个在屏幕上测量两点之间像素距离的工具常用于设计师、开发者测量 UI 元素或屏幕距离的场景。MeasureTool 是settings资源所支持的 25 个模块之一。从源码 SettingsResource.cs 可以看到模块名到设置类型的映射明确注册了 MeasureTool{ nameof(ModuleType.MeasureTool), CreateModuleFunctionDataMeasureToolSettings },这行代码表明 MeasureTool 的 DSC 操作get/set/test/export/schema/manifest最终都作用在MeasureToolSettings配置对象上与设置界面Settings UI读写的是同一份settings.json数据。需要说明的适用前提直接执行方式依赖随 PowerToys 发布的PowerToys.DSC.exe要求已安装包含该工具的 PowerToys 版本DSC v3 / WinGet Configure 方式要求系统已启用 Microsoft DSC v3dsc命令或对应版本的 WinGet。可配置属性参考MeasureTool 模块支持以下可通过 DSC 配置的属性。属性清单与设置模型 MeasureToolProperties.cs 中的定义一致下表仅列出 DSC 文档公开的属性。ActivationShortcut设置激活 Measure Tool 的键盘快捷键。类型object属性win(boolean) — Windows 键修饰符ctrl(boolean) — Ctrl 键修饰符alt(boolean) — Alt 键修饰符shift(boolean) — Shift 键修饰符code(integer) — 虚拟键码Virtual Key Codekey(string) — 键名默认WinShiftM在源码侧默认快捷键由 MeasureToolProperties.cs 中的DefaultActivationShortcut构造其中0x4D即字母 M 的虚拟键码与文档默认值对应。MeasureToolSettings通过 GetAllHotkeyAccessors() 把该快捷键注册为集中式热键因此通过 DSC 修改ActivationShortcut会走同一套热键注册与冲突检测机制。ContinuousCapture控制是否启用连续捕捉模式continuous capture适合需要反复测量同一区域时使用。类型boolean默认falseDrawFeetOnCross控制测量线是否向屏幕边缘延伸即十字准线两端画出“足”线。类型boolean默认truePerColorChannelEdgeDetection控制边缘检测是按颜色通道per-color-channel还是按亮度luminosity进行。开启后边缘识别对单一通道上的颜色变化更敏感。类型boolean默认falsePixelTolerance设置边缘检测的像素容差值。数值越小边缘判定越严格。类型integer范围0到255默认30源码中该属性声明为IntProperty初始值同为 30见 MeasureToolProperties.cs与文档默认值一致。MeasureCrossColor设置测量十字准线的颜色。类型string十六进制颜色格式#RRGGBBAA带 alpha 通道默认#FF4500FF橙红色完全不透明从源码结构看MeasureToolProperties.cs 中代码侧的初始值为不带 alpha 的#FF4500而 DSC 文档以带 alpha 的 8 位格式#FF4500FF描述默认值——两者色值一致格式差异源于序列化/文档表达的位数不同。编写 DSC 配置时建议统一使用 8 位#RRGGBBAA格式。三种使用方式与 PowerToys DSC 的其他模块一致MeasureTool 支持三种配置路径参见 PowerToys DSC Overview 与 Settings ResourcePowerToys.DSC.exe 直接执行get/set/test/export/schema/manifest命令直接作用于--module MeasureToolDSC v3 配置文件在resources中声明type: Microsoft.PowerToys/MeasureToolSettings资源执行dsc config set --file 文件WinGet Configure在 WinGet 配置文档中先安装Microsoft.PowerToys再声明 MeasureToolSettings 资源执行winget configure 文件。命令参数解析实现在 Commands 目录下SetCommand.cs、GetCommand.cs、TestCommand.cs等其中set操作会先比较当前状态与期望状态仅在存在差异时才写入见 SettingsResource.SetState并在输出中附带 diff便于脚本判断实际发生了哪些变更。配置示例以下示例完整继承自 MeasureTool 模块文档。示例 1 — 配置激活快捷键直接执行自定义 Measure Tool 的激活快捷键$config { settings { properties { ActivationShortcut { win $true ctrl $false alt $false shift $true code 77 key M } } name MeasureTool version 1.0 } } | ConvertTo-Json -Depth 10 -Compress PowerToys.DSC.exe set --resource settings --module MeasureTool --input $config其中code 77即十六进制0x4DM 键的虚拟键码与key M配套提供。示例 2 — 配置测量外观DSC自定义十字准线颜色与测量行为dsc config set --file measuretool-appearance.dsc.yaml# measuretool-appearance.dsc.yaml $schema: https://aka.ms/dsc/schemas/v3/bundled/config/document.json resources: - name: Configure Measure Tool appearance type: Microsoft.PowerToys/MeasureToolSettings properties: settings: properties: MeasureCrossColor: #00FF00FF DrawFeetOnCross: true ContinuousCapture: false name: MeasureTool version: 1.0示例 3 — WinGet 安装并配置安装 PowerToys 并启用带边缘检测的 Measure Tool 配置winget configure winget-measuretool.yaml# winget-measuretool.yaml $schema: https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2023/08/config/document.json metadata: winget: processor: dscv3 resources: - name: Install PowerToys type: Microsoft.WinGet.DSC/WinGetPackage properties: id: Microsoft.PowerToys source: winget - name: Configure Measure Tool type: Microsoft.PowerToys/MeasureToolSettings properties: settings: properties: PixelTolerance: 20 PerColorChannelEdgeDetection: true DrawFeetOnCross: true name: MeasureTool version: 1.0示例 4 — 高对比度配置面向高可见度测量场景的配置dsc config set --file measuretool-highcontrast.dsc.yaml# measuretool-highcontrast.dsc.yaml $schema: https://aka.ms/dsc/schemas/v3/bundled/config/document.json resources: - name: High contrast Measure Tool type: Microsoft.PowerToys/MeasureToolSettings properties: settings: properties: MeasureCrossColor: #FFFF00FF DrawFeetOnCross: true name: MeasureTool version: 1.0#FFFF00FF为纯品红色Magenta全不透明颜色在深色或浅色背景下均具有较高辨识度。示例 5 — 连续捕捉模式为反复测量启用连续捕捉并收紧边缘容差$config { settings { properties { ContinuousCapture $true PixelTolerance 25 } name MeasureTool version 1.0 } } | ConvertTo-Json -Depth 10 -Compress PowerToys.DSC.exe set --resource settings --module MeasureTool --input $config场景化配置UI/UX 设计面向设计工作的精确测量配置resources: - name: Design configuration type: Microsoft.PowerToys/MeasureToolSettings properties: settings: properties: PixelTolerance: 15 DrawFeetOnCross: true name: MeasureTool version: 1.0更低的PixelTolerance15让边缘判定更精确适合对像素级对齐敏感的设计验收场景。场景化配置Web 开发面向布局调试的配置resources: - name: Developer configuration type: Microsoft.PowerToys/MeasureToolSettings properties: settings: properties: ContinuousCapture: true MeasureCrossColor: #0078D7FF name: MeasureTool version: 1.0连续捕捉 蓝色#0078D7Windows 强调色蓝准线适合在浏览器与 IDE 之间反复核对布局尺寸。源码级实现要点结合仓库源码可以从三个层面理解 MeasureTool 的 DSC 配置是如何落地的设置模型层MeasureToolSettings.cs 定义模块级配置对象ModuleName为Measure ToolMeasureToolProperties.cs 定义具体属性及其默认值。布尔属性经BoolPropertyJsonConverter序列化PixelTolerance等数值属性包装在IntProperty中以便支持“值 用户是否修改过”的双重语义。DSC 资源层SettingsResource.cs 将--module MeasureTool路由到SettingsFunctionDataMeasureToolSettings实现 get/set/test/export/schema/manifest 六种操作test输出包含_inDesiredState字段可用于配置漂移检测。文档与 Schema 生成层PowerToys.Settings.DSC.Schema.Generator 通过内省设置类结构自动生成各模块的属性表文档见 DocumentationGeneration.cs这正是doc/dsc/modules/下各模块文档的属性清单来源——属性新增或变更时会经由该生成器同步。单元测试方面DSC 资源的行为由 SettingsResourceModuleTest1.cs 中的泛型模块测试基类统一验证get/set/test 语义对各模块一致适用MeasureTool 与其他模块共用同一套断言路径。适用前提与限制属性名称与类型以当前仓库doc/dsc/modules/MeasureTool.md及MeasureToolProperties源码为准MeasureToolProperties 中还存在UnitsOfMeasure、DefaultMeasureStyle等属性未在该 DSC 文档中列出编写配置前可用PowerToys.DSC.exe schema --resource settings --module MeasureTool生成 JSON Schema 核对最新支持范围DSC 的set只更新与期望状态存在差异的属性输出会附带 diff可用于审计变更快捷键类属性ActivationShortcut修改后依赖 PowerToys 的热键冲突检测若与其他模块快捷键冲突行为以设置界面提示为准。相关文档Settings Resource 参考PowerToys DSC OverviewPowerAccent 模块Microsoft.PowerToys.Configure 配置示例【免费下载链接】PowerToysMicrosoft PowerToys is a collection of utilities that supercharge productivity and customization on Windows项目地址: https://gitcode.com/GitHub_Trending/po/PowerToys创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

PHP随机红包金额分配算法:二倍均值法实现与踩坑记录 2026/9/8 2:10:25

PHP随机红包金额分配算法:二倍均值法实现与踩坑记录

简介:针对PHP开发中随机红包金额分配这一常见需求,这份代码资源面向需要实现红包功能的社交应用、电商平台或活动插件开发者,可帮助快速落地随机分配逻辑。资源包共4个文件,包含3个PHP脚本和1个文本说明,压缩后仅3KB&a…

阅读更多 →
Kimi API 实战:从 IDE 插件到智能体编排的完整接入指南 2026/9/8 2:10:25

Kimi API 实战:从 IDE 插件到智能体编排的完整接入指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
RF-EYE-U010固件包处理全指南:从校验到刷写的完整流程 2026/9/8 2:10:25

RF-EYE-U010固件包处理全指南:从校验到刷写的完整流程

简介:RF-EYE-U010.zip 是一份面向明华RF-EYE系列读卡设备集成开发的完整资料包,适合需要将其功能嵌入业务系统的嵌入式工程师与上位机开发人员。包内以 DLL 动态库、API 接口说明(PDF/CHM)及可运行的 Demo 程序为核心,…

阅读更多 →
Anthropic API接入报错403?模型路由校验与排查实战指南 2026/9/8 2:10:25

Anthropic API接入报错403?模型路由校验与排查实战指南

最近在对接 Anthropic API 的时候,不少同学遇到了同一个比较头疼的问题:请求发出去之后,没有正常返回模型结果,而是直接抛出一个403 Forbidden错误,日志里出现类似failed to connect to api.anthropic.com: status 403…

阅读更多 →
秋叶ComfyUI V30整合包:全系显卡兼容的一键AI绘画解决方案 2026/9/8 2:10:25

秋叶ComfyUI V30整合包:全系显卡兼容的一键AI绘画解决方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
一晚上用Live2D做出会转头的圆脑袋:九轴动态与物理模拟实战 2026/9/8 2:07:24

一晚上用Live2D做出会转头的圆脑袋:九轴动态与物理模拟实战

先看结论:这个项目不是大厂级别的精细角色,而是一颗圆滚滚的卤蛋大脑袋。但它最值得看的地方,恰恰是用最简单的形状,把 Live2D 里最容易让人劝退的“九轴动态”和物理模拟跑通了。建模、绑参数、调物理、导出集成,整个…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞