Repository navigation
Releases: wcr20140908/MyScreenDraw
Release list
MyScreenDraw v6.3.0
MyScreenDraw v6.3.0
Windows x64 课堂工具正式版。请下载 MyScreenDraw-v6.3.0-windows-x64.zip,解压后运行 MyScreenDraw.exe;平台自动生成的 Source code 压缩包是源码,不能直接运行。
- 双更新线路:设置中选择国外线路(GitHub)或国内线路(GitCode),选择会记住。默认 GitHub,稳定版/预览版频道分别保留。检查版本、更新说明及下载使用所选平台,两平台提供相同便携包。
- 签名更新描述文件:6.3.0 起检查内置 Ed25519 公钥验证的版本、包大小、ZIP/EXE 哈希和源码提交,下载后在本地核对完整性,再检查归档和安装清单。软件中不包含仓库访问 token。
- 课堂综合计算器:基础、科学、单位换算、统计、进制五种模式;支持科学计算角度设置、可配置保留时间的历史、恢复上次模式和窗口位置、面板高度与缩放适配,内置教学练习同步扩充。
- 保留原图:默认开启,导入 PDF/图片后批注在原图上方;擦除、清空保留原图并避免误选移动。可在设置 → 项目与教学中关闭,关闭后可调整或删除原图。
- 启动更新提示:默认启动后异步检查;新版出现时设置按钮显示霓虹光圈与红底白字 NEW!贴纸,保留手动检查;已有关闭更新偏好继续生效。
- 工具栏与界面修复:旧配置中 LOGO 与主体分离会自动重新贴合;黑/白板按钮正确显示切换目标;统一设置说明字号和颜色;增加语言、75%–200% 整体缩放、恢复提示设置和普通主程序单实例启动。
下载与安装分别确认,不会自动覆盖。升级前关闭旧程序并备份 data/ 与 exports/;手动安装时解压到新目录,再复制原数据并调整快捷方式。切换更新线路不迁移、不上传课堂内容。
包内清单、同名 .zip.sha256 和 MyScreenDraw-v6.3.0-update.json 可用于完整性核对。更新描述文件有 Ed25519 签名,Windows EXE 仍未进行代码签名,两者用途不同。
Windows 10 x64 本地验证;注入输入不等于物理触屏验收。Windows 11、物理教学触屏、多屏混合 DPI、实际听感和长时间真实课堂使用仍需目标设备复测;不承诺所有设备或未来情况永不出错。
MyScreenDraw v6.2.0
谨以此版本献给我敬爱的杜老师
MyScreenDraw v6.2.0 — 软件使用教学、无限白板与自定义配色
本次 6.2.0 正式版更新于 2026-10-20,包含页面列表与教学交互的后续修复。此版本让第一次接触软件的人能够跟随真实操作学习,也让已有课堂内容在更大的白板中方便地浏览、整理和导出;原有桌面批注、白板、项目文件和工具箱继续保留。
一、完整的软件使用教学
从 工具 → 软件使用教学 打开教学中心。正式目录包含 13 门课程、47 章、401 个定义步骤,单屏路径为 400 步;新增的无限白板漫游章计入 C05,放大镜实际移动使用步骤计入 C12。定义步骤总数不等于任意设备上的实际执行步数:单屏与多屏说明会选择不同分支。
| 课程 | 主要内容 |
|---|---|
| C01 核心入门 | 认识界面、批注与白板、书写、选择、页面、项目保存和恢复 |
| C02 书写工具 | 11 种笔型、颜色与宽度、默认笔预设、荧光笔和激光笔 |
| C03 橡皮与历史 | 圆形局部擦除、整笔擦除、尺寸调整、撤销、重做与清屏 |
| C04 选择与编辑 | 选择和移动对象、缩放与旋转、复制和删除 |
| C05 白板与页面 | 黑白板、增删与切换页面、重命名、复制位置、拖动排序及无限白板漫游 |
| C06 图形与构图 | 平面图形、四种现有立体图形、逐点取点、停笔识别、端点吸附和辅助构图 |
| C07 文字与公式 | 文本框编辑、格式设置、公式输入、符号与结构化编辑 |
| C08 项目与恢复 | 保存、另存、打开、未保存确认、恢复预览以及自动保存间隔 |
| C09 图片与 PDF | 插入图片,以及将多页 PDF 导入为独立白板页 |
| C10 导出 | PNG / PDF / SVG / EPS、进度和取消、部分失败与重试 |
| C11 测量工具 | 现有测量工具的使用与校准 |
| C12 工具箱 | 计算器、点名、计时器、放大镜与聚光灯 |
| C13 界面与系统 | 布局和主题、显示器与提示音、窗口收起/恢复及系统相关设置 |
教学步骤等待真实业务结果,例如新增笔迹、实际擦除指定样例、成功写入项目、完成导出或改变页面顺序。教学支持选课、换章、暂停、恢复和重新练习,并覆盖中文、英文、法文、西班牙文、德文、俄文、韩文和日文。
教学在独立练习进程及私有目录中使用项目自产的合成项目、图片和 PDF。进入教学时挂起原工作,退出后恢复原文档和界面;离线课程及示例随包分发,运行教学本身不依赖在线课程下载。
C07 公式章节支持直接点击画布上的公式槽位和主行末尾定位光标,不依赖物理 End 键或系统屏幕键盘;输入框与画布光标保持同步,结构化编辑按真实槽位和内容变化推进。
本次修复公式符号按钮抢走编辑焦点的问题,允许教学中的文字输入步骤使用键盘入口,并使项目打开、图片/PDF 导入默认指向当前练习素材。测量教学中的教具与控制器相互避让;放大镜教学使用私有画布样例,按实际移动和放大内容的绘制结果推进。
二、无限白板与漫游
- 默认启用无限白板。在白板中,原“鼠标”模式显示为 漫游:用鼠标拖动或单指拖动平移,用滚轮或双指手势缩放。
- 平移和缩放只改变视口,不把已有笔迹反复搬动或重算成整数坐标;书写、擦除、选择与图形操作按视图变换映射到文档坐标。
- 设置提供“回到原点(100%)”和“适配全部内容”,也可关闭无限白板,恢复有限白板交互。
- 每页各自保存位置与缩放比例;换页、复制页面、保存和重开项目时恢复相应视图。
三、多列页面缩略图
页面列表按可用空间调整为多列网格,按比例显示完整页面预览并保留页名、页码、滚动、复制、重命名、删除及拖动排序。缩略图按内容适配,包括无限白板中当前视口以外的对象。
单击缩略图选中页面并保留列表,双击进入页面并关闭列表。拖动时用蓝色插入线标明松开后的落点,单列上下、多列左右显示,边缘自动滚动时同步更新。默认页名与自定义名称均随页面移动并保存,排序不再改变页面名称;翻页条继续显示当前位置和总页数。
修复中断框选后旧选框覆盖下一次点选结果的问题,避免对象已被点中却在松开时失去选择。
四、配色与界面
保留四套内置配色,支持本地自定义配色预设的新建、命名、编辑或删除;每套自定义方案分别配置浅色与深色颜色并随设置保存。配色编辑器、教学提示及设置帮助文字具有清晰对比度和换行适配。收起主工具栏后设置面板会同步隐藏,再次展开主栏不会擅自打开设置。
五、立体图形的隐藏棱
正方体、长方体保持原有斜投影造型,显示 9 条可见实棱 + 3 条隐藏虚棱。预览、提交后的对象、旋转、保存重开与 PNG/PDF/SVG/EPS 导出沿用一致绘制路径;正方体投影背面包围盒计入旋转和笔宽,避免裁边。圆柱和圆锥底面后半圆弧也使用虚线表示。
本版未新增任意参数化棱柱、棱锥或可交互三维建模功能;这里改进的是现有二维投影图形的显示。
六、书写、识别、擦除与导出
教学区分书写样例与新提交笔迹,按完成操作后的结果推进。停笔识别、图形提交、端点吸附、擦除、项目原子保存、未保存确认、自动保存恢复预览和逐页导出保持明确结果语义。
白板的 PNG / PDF / SVG / EPS 按 全部文档内容 取界,包含负坐标和当前视口外的笔迹、文字、图形与图片。导出保留进度、取消和部分失败的明确结果。
七、更新说明与反馈
设置提供更新说明与本机版本历史入口。更新说明读取 GitHub Release 正文;网络请求受更新开关及当前运行状态限制。设置提供反馈入口,由用户主动在外部浏览器打开 Microsoft Forms;填写与提交发生在外部网站。
八、便携包
正式发行附件:
正式包为 Windows x64 便携版。请下载 ZIP 与对应校验文件,核对 SHA-256 后将完整内容解压到新目录;不要下载 GitHub 自动生成的 Source code 压缩包,也不要只提取 EXE。程序未使用代码签名,SHA-256 用于核对下载字节,不等同于数字签名。
MyScreenDraw v6.1.1
MyScreenDraw v6.1.1
本版集中提供两项改进,基于6.1.0正式版构建,不包含软件使用教学系统。
- 落笔性能:减少普通笔/荧光笔/激光笔落笔时的整页快照和扫描,使用本笔增量、局部脏区及有界空间索引;大量已有笔迹下的书写阻塞降低,保留笔迹质量、撤销/重做、翻页、保存与导出语义。
- 主题选择:设置 → 外观 → 界面配色提供经典、石墨青绿、冷灰钢蓝、暖灰靛蓝;亮/暗模式独立保存,保留用户笔色、透明度和布局。旧配置默认经典。
Windows x64便携包请完整解压到一个新目录,保留MyScreenDraw.exe和_internal在一起;更新迁移前退出旧版并备份data与exports。原配置和项目兼容。本版不自动改动Windows显示器或系统音量。
随附.zip.sha256用于校验。验证记录见仓库的docs/release-validation-6.1.1.md。性能数据来自合成离屏测量,不承诺所有机器或真实触屏都达到相同延迟;本次不进行实屏测试。
MyScreenDraw v6.1.0
MyScreenDraw v6.1.0 — 文档安全、逐页导出与恢复预览
本版集中修复文档与导出可靠性,并改进页面管理、自动保存和教学偏好。
文档安全
- 白板是否显示不再决定保存哪些页;退出白板、桌面批注后保存仍保留整本文档和当前页。
- 打开其他项目、安装更新前使用明确的“保存 / 不保存 / 取消”确认,默认取消;保存失败或取消文件选择不会继续覆盖当前工作。
- 项目与自动保存使用读取端能够接受的校验规则和原子写入;图片实际解码验证,压缩格式按文件内容识别。
- 自动保存改为后台单任务写盘,未变化时不重建快照,仅重新序列化有改动的页;失败会保留重试机会,退出前等待落盘。
恢复和页面管理
- 恢复自动保存时可预览页面;高级选项默认折叠,展开后选择较早版本,损坏版本不会直接覆盖当前文档。
- 页面可复制、重命名和拖动排序。复制默认位于原页之后,可在设置中选之前、最前或最后。
- 页面缩略图按可见范围、修订和尺寸缓存,避免每次刷新重绘整本。
- PDF 导入为独立白板页;先渲染有界批次,全部成功后提交。取消或渲染错误不会留下半批导入内容。
导出
- PNG/PDF 改为逐页渲染与写出,避免将所有整页位图同时驻留内存。
- 新增进度、取消和明确的未导出原始页码提示;SVG/EPS 同样不再把空文件或失败页面报成完整成功。
- PNG 单页原子落盘。PDF 校验可读性和页数再提交;渲染失败时的可用页另存为明确的不完整文件,不覆盖正常目标。
- 原问题的原因包括:异常或空图被静默跳过、成功提示只统计剩余页、整本位图的内存峰值,以及未完整检查绘制设备/写盘结果。
性能和设置
- 缓存已完成笔迹的路径与边界,活动笔迹按新线段增量更新。逐像素对照测试覆盖多种笔型、擦断和交错触点;基准与首次建立缓存的额外成本见验证记录。
- 自动保存间隔有预设和自定义值,并提示过短间隔的 CPU/I/O 与历史留存代价。
- 设置可选择批注所在显示器,断开时回退;不会更改 Windows 主显示器。
- 计时器结束音量默认 100,可调到静音。只改变应用生成的提示音幅度,不再发送系统音量增大按键;Windows 系统静音/音量仍然生效。
验证边界
全量构建回归使用离屏模式;另完成 Windows 深浅主题基础实屏测试各 102 项、新功能实屏测试各 37 项,以及 Windows 原生触摸注入 4 项。实屏拖拽发现的缩略图丢行/自动滚动问题已修复并回归。注入测试不等于物理触屏硬件验收;真实多屏/DPI、Windows 11、实际扬声器听感和长时间课堂使用未验证。最终构建回归:1488 项通过、7 项跳过、1208 个子测试通过,构建退出码 0。成品包多页文档恢复/重开、旧包更新后的自动重启与数据保全,以及直接操作 EXE 导出的 3 页 PDF / 3 张 PNG 均通过。详细证据和公开附件核验记录见 docs/release-validation-6.1.0.md。
下载与升级
使用本 Release 的 MyScreenDraw-v6.1.0-windows-x64.zip 与同名 .zip.sha256;Source code 附件不含可直接运行的 EXE。请保存当前项目,完全退出旧版并备份 data/、exports/ 和其他位置的项目,再将整个便携包解压到新目录。保留 EXE 与 _internal 的相对位置。程序未签名。
ZIP SHA-256:8c6c3b2fa048cb40884283b3d78ac1620c73af3d6842f01b46d6e15cc40ac81e。
注意:新包不能追溯修复旧进程内的更新器或未保存确认;尤其从 6.0.0 升级时应手动下载并迁移。文件栏导出沿用模式语义:白板逐页导出,桌面批注导出屏幕截图;保存项目在两种模式下都会保存整本文档。
MyScreenDraw v6.0.1
MyScreenDraw v6.0.1 — 更新进度与安装重启修复
修复内容
- 检查、下载、校验、安装使用独立状态。下载显示百分比、已下载/总大小(MiB)并支持取消;未知总大小时使用不定进度及已下载大小,不伪造百分比。
- 下载完成回调排队时仍阻止重复检查/下载;取消、失败或拒绝安装后恢复控件并清理临时下载。
- 源码运行时拒绝应用内覆盖安装,即使目录中存在 EXE;便携安装传递目标版本和旧进程 PID,等待退出,不强杀任意 Python 进程。
- 校验清单版本及 EXE SHA-256,重置 PyInstaller 启动环境。使用 .NET 按字面路径启动,修复中文、空格和方括号目录下的重启失败。
- 收到新进程事件循环就绪确认后才提交安装并清理备份。替换失败或新进程早退时尝试回滚;进程仍存活但未确认就绪时保留备份,不强行覆盖运行中的文件。
- 保留
data/、exports/和未参与替换的用户文件。回滚不是断电、磁盘损坏或权限故障下的无条件恢复保证,升级前仍须备份。
6.0.0 用户:本次请手动换目录升级
6.0.0 正在运行的更新器自身有缺陷,新包不能追溯修复旧进程中的代码。不要依赖 6.0.0 应用内更新完成这次升级。
- 从本版本正式 Release 下载
MyScreenDraw-v6.0.1-windows-x64.zip和同版.zip.sha256,核对 SHA-256。不要选择 GitHub 自动生成的 Source code 源码附件。 - 将 ZIP 全部内容解压到新的空目录,保留 EXE 与
_internal/的相对位置;不覆盖旧目录或源码目录,先不要启动新程序。 - 保存工作,通过旧版托盘菜单完全退出并处理保存确认,确认旧进程已结束。F12/隐藏到托盘不是退出。
- 备份旧版
data/、exports/和外部项目,再复制data/、exports/到新目录。目标若已有用户文件,先分别备份并逐项处理冲突,不整目录覆盖。保留旧目录及备份。 - 将桌面、开始菜单、任务栏快捷方式改为新 EXE;如启用了开机自启,也须核对并更新其路径,避免又打开旧版。
- 运行新 EXE,确认 v6.0.1,核对设置、项目和导出,再完全退出并重新打开。不要让两个版本同时操作同一份数据。
For 6.0.0 users: do not rely on its embedded updater. Download and verify the 6.0.1 portable ZIP from the official release, extract it into a new empty directory, fully exit the old version, then back up and copy data/ and exports/. Resolve existing-file conflicts individually. Update shortcuts and any enabled autostart path, confirm v6.0.1, and restart. Keep the old installation and backups. See the English README for details.
本轮验证与限制
- Windows 10 x64,Python 3.11.9、pytest 9.1.1、PyQt6 6.11.0、PyInstaller 6.21.0。
- 完整构建门禁:1347 项通过、7 项跳过、1197 个子测试通过,构建退出码 0。Qt 会话结束时先销毁测试窗口,避免将对象留到解释器退出;不忽略原生崩溃退出码。
- 构建目录及 ZIP 解压目录中的真实 EXE 均通过离屏启动;源码快照、包内容、EXE 哈希与验收收据一致。
- 带中文、空格、方括号的隔离目录中,当前更新事务自动重启到 6.0.1,观测耗时 21.36 秒,再次打开通过;4 个合成用户文件和 5 项设置保留。耗时仅为本机本次观察,不是启动时限承诺,也不证明旧版内嵌更新器已修好。
- 手动换目录迁移演练:新 EXE 两次正常启动,5 项设置保留,旧目录、备份及外部合成项目未变;只验证空白合成项目,未操作真实快捷方式或自启动项。
- 原有 90 个用户数据/导出文件哈希未变。验收数据单独保存在本地,不随包分发。
- 未进行真实触控大屏、Windows 11、多屏/DPI、另一台无 Python 机器或长时间课堂验收。程序未签名,SHA-256 不是发布者数字签名。
- 公开附件回下载状态及详细证据见 6.0.1 验证记录。本地验收不能替代公开附件核验。
ZIP SHA-256:408ba00326c0e434cde8705207a489a462400af109b3a9d0baa93479e072d925
MyScreenDraw v6.0.0
MyScreenDraw v6.0.0
Windows x64 便携版,继承 beta.8 的 11 种永久笔形、独立笔形设置、多页白板与课堂工具,新增三项课堂偏好,并修复后台窗口、任务栏、设置恢复及 LOGO 交互问题。
请下载便携 ZIP,不要下载 GitHub 自动生成的 Source code。全部解压后运行 MyScreenDraw.exe,保留同目录 _internal;无需安装 Python。程序未签名,升级前请通过托盘完全退出旧程序并备份数据。
新增三项课堂偏好
这三项已包含在 6.0.0 便携包中,beta.8 不包含。均从主栏 设置进入。
1. 设置顶部黄色开源免费提醒
提示卡说明 MyScreenDraw 开源免费,第三方代装/协助收费不是项目官方收费;相关服务问题由服务提供者负责。提示卡无需开启,不会强制弹窗或自动打开设置。
按本地 data/config.json 的记录,前 3 次正常启动显示,之后在版本号相对上次启动变化的那次显示(包括升级、回退或切回曾用版本)。打开设置不计数,未打开设置的正常启动仍计数。卡片右上角 ×仅关闭本次运行的提醒,重开设置不复现;下次符合条件的启动再显示。F12 隐藏到托盘不算新启动,重置配置会重新计数。
2. 设置 → 绘制 → 换页后落笔恢复批注笔
默认开启。白板实际换页后,当前若是橡皮、选择、图形等非批注状态或鼠标模式,首次画布左键按下/触控开始恢复上次具体笔形、荧光笔或激光笔,并继续处理同次输入,不用补点,首笔不会因恢复动作丢失。激光笔仍只指示、不留永久笔迹;已处于批注笔状态时不强制切换。
上/下页、缩略图跳页、新建页、删除当前页后显示保留页均适用(删除唯一页会留下空白页)。首页/末页边界、当前页缩略图和删除其他页不会新增待恢复动作。换页后主动选择工具(含再次选择当前工具)、切换鼠标/绘图模式、退出白板或关闭开关即取消待恢复;只打开设置不取消。白板外鼠标穿透不变。
3. 设置 → 绘制 → 使用自定义笔预设
一个总开关,默认关闭,没有逐笔开关;关闭时保留最后使用设置,不删除预设、不撤回已应用的值。总开关下的 笔型可选 11 种永久笔形、荧光笔、激光笔,各自独立保存。永久笔包含颜色、粗细、速度变宽及适用高级参数,书法笔另含笔尖角度;荧光笔包含颜色、粗细、透明度;激光笔仅颜色、粗细。
- 编辑并保存:选择笔型、点击色块打开支持透明度的调色盘,确认颜色后点 保存预设;色号只读,可查看与复制,取消调色盘不修改草稿。只编辑或切换下拉框不写入配置,也不切换画布工具。总开关关闭时也可保存;缺失预设使用内置值,不自动捕获现用设置。
- 保存当前配置:先在普通笔设置中调好目标笔,到预设编辑器选择同一笔型,点 捕获当前。它直接保存所选笔型的现用配置并替换该笔型草稿,无需再点保存,不是抓取其他活动工具。
- 何时应用:启用后,在启动恢复设置及从其他工具/笔形切回时加载;打开总开关时也会立即应用当前批注工具的预设。换页自动恢复到另一批注工具遵循同一规则。重复点击已经选中的同一支笔只打开设置,不重载;每一笔不会重置。
- 不会改什么:保存/捕获本身不立即应用;保持总开关开启,切到其他工具/笔形再切回可查看新预设。临时调笔不覆盖预设,直到再次应用预设才替换临时值;已有笔迹不受影响。
本轮修复
- 修复任务栏清除接口的 COM GUID,并补全 64 位参数、COM 初始化/释放配对及失败日志;浮窗每次显示后立即重新抑制任务栏按钮,覆盖复用 HWND 和后台打开设置的路径。Qt 父子关系、焦点及菜单策略不变,真实 Windows 任务栏表现仍需用户验收。
- 主界面隐藏到后台时,计算器、设置、点名面板等已打开的持久工具窗口同步隐藏;恢复时只还原仍存在且未关闭的原有窗口,保留内容、位置与工具栏折叠状态。恢复后仍为鼠标穿透模式,瞬态菜单、文字编辑与点名投影不自动复现。后台定时回调不能重新显示工具窗口。
- 后台通过托盘单独打开设置时,仅放行设置和它的子对话框,不同时唤醒画布与其他工具;设置关闭后撤销放行。退出确认仍可操作。
- 设置页的笔型、更新通道下拉框及弹出列表跟随亮/暗主题;预设颜色改用支持透明度的调色盘,13 类工具草稿、保存和捕获逻辑继续独立。
- 粉笔接入确定性的 192×192 多尺度颗粒纹理,减少短周期重复;保持输入色、透明度/密度语义和缓存契约。细线连续性与实际质感由用户实测,不宣称已完成视觉验收。
- 修复外部工具环境中的同名 ICU DLL 污染打包依赖、导致冻结程序在加载 QtCore 时无法启动的问题;依赖分析优先使用 Windows 系统 DLL 搜索目录。
- 构建目录及解压包的 EXE 冒烟检查均强制 Qt offscreen 并禁用软键盘启动,异常退出也恢复调用方环境。
- 拖动 LOGO 时,未分离且展开的工具栏与它按整体矩形限制在屏幕可用区域;竖版保持 LOGO 在上,横版在左,不再靠边翻面。整体超出可用区域时优先保持相对位置,不保证所有控件可见;独立拖动工具栏及折叠模式保留。
- 进入拖拽状态和释放时清除 LOGO 按下高亮,普通点击折叠/展开及正常悬停反馈保留。
- 修复非法主题/当前工具类型,以及橡皮大小、荧光笔透明度/宽度、激光笔宽度、放大镜倍率/大小的数值转换中断设置恢复的问题。有效的后续字段(包括关闭更新检查的偏好)继续加载;无法解析的配置文件不能靠逐字段回退恢复。
- 保留旧共享画笔设置迁移,以及各笔的颜色、宽度、速度变宽和高级参数。
升级说明
旧配置缺少新字段时,换页恢复默认开启、自定义笔预设默认关闭,提醒计数从首次正常启动开始;原有独立笔形配置继续保留。总开关关闭时不会用新增内置预设覆盖现用配置。
应用内更新设计上跳过 data/ 和 exports/;6.0.0 最终包的成功升级、文件保留及失败回滚仍待验证,不能把源码设置回归视为整包升级证明。手动升级前请完全退出旧程序并备份这些目录及另存的项目;将新包完整解压后复制备份数据。F12/主栏关闭是隐藏到托盘,真正退出请用托盘菜单。
旧版 classic 界面设置会迁移为当前统一图标界面;原显示器不存在或布局越界时,位置会收回当前可用屏幕。这些是兼容调整,不承诺像素级保持不可用位置。
验证与限制
2026-10-03 发布前完整 offscreen 回归:1296 passed、7 skipped、1184 subtests passed(785.86 秒),退出码 0。本次补充了测试运行数据隔离:配置、自动保存及导出等路径重定向到临时目录;本次完整回归前后真实配置逐字节一致。
候选包原构建中的完整回归为 1293 passed、7 skipped、1184 subtests passed,BUILD_EXIT=0;构建目录及解压后的 EXE 均通过无屏冒烟。后续改动仅为测试和文档,生产源码与包未变化。独立复验确认 ZIP/EXE/收据/源码指纹一致,冻结 EXE 内三个任务栏补丁函数与当前源码匹配。
较早一轮曾出现配置哈希不一致;该历史失败仍保留在验证记录中,没有改写旧基线,也没有覆盖用户配置。测试路径隔离已修复,并由上述新回归证明后续配置保全。
发布者已确认检查完成并授权发布;这是发布者报告,不是 AI 实屏代验。7 个自动化跳过项为真实键盘/焦点 4 项、系统托盘 3 项;3 个真实触控文件按既定命令排除。AI 未查看图片或视频、未截图、未操作桌面。没有新增逐设备、Windows 11、多屏 DPI、无 Python 机器、整包升级矩阵或长期课堂测试报告,不能把无屏通过视为这些环境的保证。详见 6.0.0 验证记录。
- ZIP SHA-256:
6ec2008cc89e7213f31d206e939191f71016872f339c8cde13b777f8e013210b - EXE SHA-256:
35422b32bb00923ca4142a3aeadd6155638f626ede5c09d7c6967a817371302b - 生产源码指纹:
7196612bf2d44ac64b3d4de466784178a266df33cfc7af93061728d4c7f40fe8
当前构建流程不签名;SHA-256 用于完整性核对,不等于数字签名。SVG/EPS 对纹理和光晕仍有降级,需要完整笔迹效果请使用 PNG/PDF。默认自动检查更新可关闭,下载与安装分别确认;不上传绘图、名单或本地日志。
v5.5.1
v5.5.1 - stable z-order without whiteboard flicker
- Keeps ClassIsland above the MyScreenDraw canvas and main panel.
- Keeps the canvas and panel above ordinary topmost floaters, desktop pets, and launcher widgets.
- Replaces the old unconditional 500 ms SetWindowPos heartbeat with an audit-first repair path, eliminating opaque-whiteboard recomposition flicker when the ordering is already correct.
- Treats higher, unreachable UIAccess windows as non-actionable until they return below the canvas.
Verified on the real desktop with ClassIsland active and a competing floater reasserting its topmost position every 300 ms; ClassIsland never appeared below MyScreenDraw. The full offscreen suite passes: 733 tests (7 skipped); the new stacking mutation check catches 9/9 deliberately reintroduced regressions.
SHA-256 (MyScreenDraw-v5.5.1-windows-x64.zip): b2baf95559a2632d384ee7f6d10b55775b14732800f1115e6bca21630a69ca64
MyScreenDraw v5.5.0
MyScreenDraw v5.5.0
把散落在主栏上的开关收进一个设置页,另做了一整套图标界面与旧界面并存,
并加入两个会碰到系统的功能:开机自启(写注册表)和手动检查更新(会联网)。
这两个默认都是关的。
主要变化
- 设置页:分「外观 / 界面 / 绘制 / 系统 / 关于」五段。经典按钮仍是状态的唯一
所有者,设置页只是它的视图,不会出现两处说法不一致 - 全图标界面:与原文字界面是两棵并存的 widget 树,切换只是显示/隐藏。21 个图标
全部用 QPainter 画,不引入字体或图片资源。触控命中面积不变 - 界面透明度 35–100%:走
setWindowOpacity整窗合成,不是只改背景色 alpha
(那样文字和图标仍然是实的)。画布永不参与透明——画布淡了就是墨迹淡了 - 圆角 0–24px
- 开机自启:只写
HKEY_CURRENT_USER\...\CurrentVersion\Run,不碰 HKLM。
便携版换了目录之后能自愈路径 - 手动检查更新:默认关闭;只在你亲手点的时候发一次 GET;只读版本号,绝不下载、
绝不执行任何东西。撞上 GitHub 的每小时限流时单独说明——一间教室共用一个出口 IP,
撞限流是常态而不是故障
修掉的缺陷
- 亮色主题下「粗细: 4」这一行看不见:白字配
#edf2f7浅底,实测对比度只有 1.13:1 - 设置页上「文字 / 图标」的高亮永远钉在左边那颗,不管你选哪个
- 设置页在暗色主题下露出亮色底
- 设置页压住主面板:原先屏幕居中弹出,而主面板常停在中间偏左,被压住的那半边
点下去是主面板在收事件。现在它避着主面板弹,跟子菜单同一个规矩;主面板变宽或
被拖动之后会重新让位
关于「离线」措辞的更正
加了上面两个功能之后,文档里原先「完全离线、不联网、不写注册表」的说法就不准确了。
README、README.en、SECURITY 里共四处已改,并写明了出网地址与注册表路径。
api.github.com 是唯一的出网目标,且只在你打开开关并亲手点击时才会访问。
验证
离屏套件 719 个用例全绿;实屏验收 92 项断言全通过(真实鼠标点击、像素级量取
透明度混色与圆角、真读真写注册表、真发一次 HTTPS 请求)。每一条新用例都做过变异
测试——先证明它在 bug 还活着时会红,再相信它的绿。
已知局限(如实说明)
- 界面文案里中英文是逐句写的,其余 6 种语言按现有条目的风格补齐,未经母语者复核
- 仅 Windows。触控相关的实现直接用了 Win32 接口
下载
MyScreenDraw-v5.5.0-windows-x64.zip,解压即用,无需安装。
MyScreenDraw v5.4.1
本次发布合入 v5.3.0 ~ v5.4.1 的全部改动(v5.3.x 与 v5.4.0 未单独发布),因此从 v5.2.2 升级过来的变化较大。完整历史见 CHANGELOG.md。
v5.4.1 修的两件事
进入文字编辑要冻住好几秒
尤其是第二次进入,实测 5~10 秒。原因是请求系统触摸键盘时,代码在启动 TabTip.exe 之后在界面线程上等着它就绪,而这个等待正好卡在打开文本框的路径中间;退出编辑时又会把键盘收起来,所以每一次重新进入都要重付一次冷启动的代价。
现在这个等待改由界面已有的定时器在后台完成,打开文本框立刻返回。用假启动器测得的下限情形:每次进入 612 毫秒 → 3.4 毫秒。真机上省下的是那几秒。
顺带给面板的重新聚焦加了重入保护——它内部会派发事件队列,因而可能在自己返回之前被再次调用,嵌套下去就是几十次事件派发,表现为按键卡住不动。
光标可能留下残影
修正了光标重绘的失效区域:现在总是把「上一次真正画出来的位置」和当前位置一起报为需要重绘,退出编辑时也会擦掉最后画出的那一条。
如实说明:这一条没有被复现。用 18 个真实操作逐像素比对,修复前后都是 0 个不同像素,两个候选原因也已被测量排除。所以它是一个有原则的兜底(不再假设旧光标会被别人擦掉),而不是一处已定位的修复。如果你还能看到两条光标,请开 issue 并附上截图与操作步骤。
v5.4.0 起的主要变化(本次一并发布)
- 文字可以点在哪就改哪:此前没有插入点的概念,只能往末尾追加、从末尾删除。现在支持点击定位、方向键移动、中途插入与删除,光标会闪烁
- 打字不再越打越卡:重绘只刷受影响的那一框,度量全部加缓存,页面快照合并为定时保存。实测 180 字时每键 19.4ms → 12.4ms
- 公式编辑器:分数、根号、上下标、求和等结构化输入,符号面板里能看到当前格子的内容
- 文本框可拖拽定尺寸,文字自动折行
- 系统触摸键盘:能真正弹出来了(此前在部分机器上完全不出现),并且只会有一个键盘,不再和输入法互相抢焦点;程序退出时会顺带把它收起来
- 八种界面语言(跟随系统):中文、English、Français、Español、Deutsch、Русский、한국어、日本語
安装
下载 MyScreenDraw-v5.4.1-windows-x64.zip,解压到任意目录,运行 MyScreenDraw.exe。免安装,不写注册表,卸载即删除目录。