跳到正文

阶段一百一十二:设计器工作区与交互整理 ​

实现范围 ​

设计器采用统一的文件命令、文档工具栏、结构导航、连续画布和上下文属性检查器。结构树显示中文类型、实际文字与 ID,支持搜索、折叠和键盘导航;表格及行、列设置按层展开。节点属性按用途分组,ID 和正文靠前,多选差异显示“多个值”。文件菜单、插入菜单、操作搜索、导出任务和帮助使用一致的控件与焦点反馈。

Ctrl+K 搜索可执行操作;专注模式隐藏两侧面板。编辑视图写入地址参数,支持重新打开相同视图。备用字体诊断按类别归并,保留原始记录;草稿错误同时出现在编辑区与状态栏。源码高亮、实时 Java 预览、多选排序、资源、表格工具与损失策略继续使用现有契约。没有改动文档模型或排版后端。

操作入口见设计器指南。

构建与静态检查 ​

powershell
.\gradlew.bat :export4j-designer:test :export4j-designer:distZip --gradle-user-home build/gradle-validation --offline

设计器 29 项 Java 测试通过,无失败、错误或跳过。全部前端脚本通过 node --check;HTML 无重复 ID,脚本引用存在且加载顺序正确。git diff --check 通过。应用从本次分发 ZIP 的真实 JAR 启动,新增工作区脚本使用固定静态路由,不扩大文件系统读取范围。

浏览器验收 ​

场景实际结果
默认结构与搜索表格默认折叠;搜索末行文字可定位深层单元格并保留祖先
鼠标展开与键盘折叠点击表格箭头展开,左方向键折叠;焦点与展开状态可观察
正文输入和切换节点输入新标题后自动预览,切换节点将正文写入模板
多选属性两个节点可一起修改字号;ID 不参与批量编辑,不同字号显示“多个值”
多选拖动及撤销两个同级元素移动到表格之后,源顺序正确且保持相对次序,可撤销
表格合并和拆分Ctrl 选择两个相邻表头格后合并,网格实际出现 colspan=2;拆分恢复物理格
模板 XML格式化后有同步行号及语法标记,混合内容继续使用原格式化契约
非法 JSON错误可见,原有效页面保留;修正后自动恢复排版
操作搜索搜索“页眉”可执行页面设置;Ctrl+K 打开、Esc 关闭
专注模式侧栏隐藏,原画布图片 URL 保持,退出恢复侧栏
诊断266 条逐字备用字体记录合为一个类别,详细记录仍可展开
导出 PDF完成预检并从浏览器下载;零损失、零警告,独立解析包含检查表首末行
窗口尺寸默认桌面、966×884 窄桌面和 375×812 窄屏检查未发现页面横向溢出;临时尺寸已复原

浏览器最终页面无脚本错误。PDF 下载经 pypdf 6.10.0 独立解析,确认一页及正文首末标记。此次主要验证工作区交互,不扩大六格式的既有输出支持范围,也不替代其独立输出验收。

验收后恢复原模板、独立 JSON 和全部 ZIP 资源,各条目字节相同,仅保留一个本地设计器实例。备份、截图、下载和原始日志保留在忽略的 build/verification/ 中。以上为本地构建与浏览器验证,不代表提交、推送或正式发布。