Preview docx on fixed paper instead of the theme background #196

Merged
weichen merged 9 commits from feature/docx-paper-preview into main 2026-10-05 04:06:18 +00:00
4 changed files with 41 additions and 2 deletions
+28
View File
@@ -0,0 +1,28 @@
# feature/docx-paper-preview 任务卡
任务主记录:https://git-home.u1680832.nyat.app:30319/weichen/Agent-System-Dev/pulls/196 ;状态:进行中;owner:weichen
## 基线与授权
- 权威仓:ssh://git@git-ssh.u1680832.nyat.app:31411/weichen/Agent-System-Dev.git;目标分支:main;R0(initial_base_sha)= eaae87e635ce31570159637cfe400f099b4daf5b
- 工作区:/home/weichen/projects/Agent-System-Dev-wt-feature-docx-paper-preview(worktree);分支:feature/docx-paper-preview
- 授权与交付终点:实现 docx 纸面原貌预览(令牌、样式、栏宽缩放、测试、浏览器核对、子仓与 Dev PR)。合入 main 与 task-finish 等所有者合入后执行。不改写历史、不改分支保护、不发布版本。
## 目标与非目标
- 目标:docx 预览固定白纸黑字,保留文档自带样式,窄预览栏整页等比缩小,全屏栏宽足够时保持 100%。
- 受影响:`DESIGN.md`;UI 仓 tokens/ui.css/FilePreview;Frontend 仓 styles.css、previewsetup、previewfit。
- 非目标:mammoth 与伪 docx 文本回退仍走主题化 `.doc-viewer`;不改 `renderAsync` 的分页选项;不改 xlsx/pptx 的解析路径。
## 同步记录
| 节点 | sync_base_sha | tested_head_sha | checked_at |
|---|---|---|---|
| 启动 | eaae87e635ce31570159637cfe400f099b4daf5b | eaae87e635ce31570159637cfe400f099b4daf5b | 2026-10-05T03:54:31Z |
| 同步前验收 | eaae87e635ce31570159637cfe400f099b4daf5b | 10eaaeb8dc4f0e869847d3874a90793be3dfedf9 | 2026-10-05T04:03:56Z |
## 结果与验证(完成后填写)
- 结果:UI `b14c9c0`(https://git-home.u1680832.nyat.app:30319/weichen/Agent-System-UI/pulls/35)增加 `--paper` / `--paper-ink` 并允许预览加载器返回清理函数;Frontend `9badbb1`(https://git-home.u1680832.nyat.app:30319/weichen/Agent-System-Frontend/pulls/44)把 docx 页画到纸面令牌上并按栏宽缩放。
- 验证:UI `npx vitest run` 84 通过、`npx tsc --noEmit` 通过;Frontend `npm test` 81 通过、`npx tsc -b` 通过。`make test` 于 2026-10-05 在本 worktree 通过(boundaries、pins、libs、core、backend、frontend 81、ui 84、agent-command)。浏览器核对页:深色窄栏 420px 纸面 `rgb(255,255,255)`、默认墨色 `rgb(0,0,0)`、标题保留文档蓝 `rgb(31,78,121)`、红句保留 `rgb(192,0,0)`,缩放 `matrix(0.496222)`(页宽 794);浅色主题纸面与墨色不变;墨绿主题底座 `rgb(224,224,219)`、纸面仍白;栏宽 998px 时 `transform=none`(100%)。
- 影响与剩余项:深色主题下 docx 正文恢复可读。mammoth 与伪 docx 文本回退仍走主题化排版。合入权在所有者,合入后才能 task-finish。
+11
View File
@@ -75,6 +75,17 @@ Agent-System-Dev 是桌面优先、Web 兼容的 AI 工作台。界面应**冷
| `--accent` | `#165f49` | 交互强调(翠绿) |
| `--primary` / `--primary-foreground` | `#082d4f` / `#f3f8f5` | 主按钮 |
### 2.6 文档纸面(主题不变量)
Office 分页预览是**内容**,不是界面。纸面与默认墨色固定,三套主题同值:
| 令牌 | 值 | 用途 |
|---|---|---|
| `--paper` | `#ffffff` | docx 页、幻灯片等文档纸面 |
| `--paper-ink` | `#000000` | 纸面上没有自带颜色的文字的默认墨色 |
规则:保留文档自己的字号、颜色、表格和图片样式。禁止用 `--bg` / `--text` 等主题令牌覆盖这些内联样式。界面只负责纸面周围的底座(`--bg-inset`)和按栏宽等比缩放。
## 3. 字号标尺(唯一字号体系)
全局唯一可调变量 `--ui-font-size`(默认 14px),派生: