Skip to content

Releases: wcr20140908/MyScreenDraw

MyScreenDraw v6.3.0

Choose a tag to compare

@wcr20140908 wcr20140908 released this 29 Oct 12:05

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

Choose a tag to compare

@wcr20140908 wcr20140908 released this 20 Oct 11:39

谨以此版本献给我敬爱的杜老师

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

Choose a tag to compare

@wcr20140908 wcr20140908 released this 13 Oct 12:14

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

Choose a tag to compare

@wcr20140908 wcr20140908 released this 06 Oct 03:39

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

Choose a tag to compare

@wcr20140908 wcr20140908 released this 05 Oct 10:52

MyScreenDraw v6.0.1 — 更新进度与安装重启修复

修复内容

  • 检查、下载、校验、安装使用独立状态。下载显示百分比、已下载/总大小(MiB)并支持取消;未知总大小时使用不定进度及已下载大小,不伪造百分比。
  • 下载完成回调排队时仍阻止重复检查/下载;取消、失败或拒绝安装后恢复控件并清理临时下载。
  • 源码运行时拒绝应用内覆盖安装,即使目录中存在 EXE;便携安装传递目标版本和旧进程 PID,等待退出,不强杀任意 Python 进程。
  • 校验清单版本及 EXE SHA-256,重置 PyInstaller 启动环境。使用 .NET 按字面路径启动,修复中文、空格和方括号目录下的重启失败。
  • 收到新进程事件循环就绪确认后才提交安装并清理备份。替换失败或新进程早退时尝试回滚;进程仍存活但未确认就绪时保留备份,不强行覆盖运行中的文件。
  • 保留 data/、exports/ 和未参与替换的用户文件。回滚不是断电、磁盘损坏或权限故障下的无条件恢复保证,升级前仍须备份。

6.0.0 用户:本次请手动换目录升级

6.0.0 正在运行的更新器自身有缺陷,新包不能追溯修复旧进程中的代码。不要依赖 6.0.0 应用内更新完成这次升级。

  1. 从本版本正式 Release 下载 MyScreenDraw-v6.0.1-windows-x64.zip 和同版 .zip.sha256,核对 SHA-256。不要选择 GitHub 自动生成的 Source code 源码附件。
  2. 将 ZIP 全部内容解压到新的空目录,保留 EXE 与 _internal/ 的相对位置;不覆盖旧目录或源码目录,先不要启动新程序。
  3. 保存工作,通过旧版托盘菜单完全退出并处理保存确认,确认旧进程已结束。F12/隐藏到托盘不是退出。
  4. 备份旧版 data/、exports/ 和外部项目,再复制 data/、exports/ 到新目录。目标若已有用户文件,先分别备份并逐项处理冲突,不整目录覆盖。保留旧目录及备份。
  5. 将桌面、开始菜单、任务栏快捷方式改为新 EXE;如启用了开机自启,也须核对并更新其路径,避免又打开旧版。
  6. 运行新 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

Choose a tag to compare

@wcr20140908 wcr20140908 released this 03 Oct 13:08

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

Choose a tag to compare

@wcr20140908 wcr20140908 released this 12 Sep 05:08

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

Choose a tag to compare

@wcr20140908 wcr20140908 released this 30 Aug 09:19

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

Choose a tag to compare

@wcr20140908 wcr20140908 released this 29 Aug 08:44

本次发布合入 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。免安装,不写注册表,卸载即删除目录。

MyScreenDraw v5.2.2

Choose a tag to compare

@wcr20140908 wcr20140908 released this 26 Aug 12:01

Release v5.2.2