Skip to content

Latest commit

 

History

History
60 lines (43 loc) · 6.86 KB

File metadata and controls

60 lines (43 loc) · 6.86 KB

PDFuck 界面字号 VI 规范(2.0.29)

唯一的三种界面字号

角色 CSS 变量 较小 标准 较大 最大 用途
辅助 --ui-font-small 10px 11px 14px 16px 导航简短名称、提示、元数据、快捷键、次要说明
正文 --ui-font-body 12px 13px 16px 18px 按钮、表单、正文、列表默认内容、工具分组小标题
标题 --ui-font-title 16px 17px 20px 22px 模块、窗口标题

这些值均为 CSS 像素,系统 DPI 另行缩放。不得在组件中新增第四档字号,不得使用 px/em/rem 或百分比偷偷派生新的界面字号;字体族和字重可区别层级。数值仅能在 typography.css 默认变量和 interface-size.ts 的设置计算处定义。

标准预设仍用已有存储值 14 标识,实际显示值统一由 interfaceFontSizes 计算为 11/13/17,避免把旧用户的标准设置误判成其他预设。设置预览必须使用同一计算结果。

排版与交互

  • 导航使用简短译名,完整模块名称留在 aria-label 和提示中。导航宽度随正文档在 76–112px 范围内调整,展开/收起父容器使用相同宽度变量;禁止依赖裁切隐藏溢出。导航文字使用辅助档并允许必要换行,逐个文字 Range 验证边界。

  • 工具面板内灰色分组标题(页面布局、主题等)使用正文档和字重,不得套用模块/窗口标题的大字号。

  • 单行/多行操作图标采用 SVG 行形笔画,单行只有一个文字基线,多行有三个基线;不使用含义不明确的 Unicode 菜单字符代替。

  • 含文字的徽标(例如文档标签 PDF)必须使用随字号扩展的宽高与内边距,不得沿用固定像素盒子;文字 Range 边界必须完全落在徽标内,不能与文件名重叠。纯 SVG 图形可使用固定几何尺寸。

  • 徽标外层文档标签与标签栏也需自适应,分别保留至少 5px 上下留白;PDF 徽标与文件名垂直居中。计数使用居中胶囊,单数字呈圆形,多位数字横向扩展。

  • 最小化、最大化与关闭是窗口控制区,不受普通工具按钮的高度和内边距规则影响;背景覆盖完整标题栏高度。字号适配规则限定到 titlebar-tools。

  • 左侧工具按钮采用 14px 垂直内边距,按钮间距 14px,分组标题上/下间距 28/14px;实验室工具遵循同一间距。放大字号通过正文滚动保全内容。

  • 正文行高约 1.45,按钮与标题至少 1.35;需要换行的控件使用自适应高度。长译文允许自然换行,不能靠缩小字号解决拥挤。

  • 四个工具模块的标题固定,标题下的全部内容共用一个滚动区;不得把实验室或画板入口留在滚动区外。

  • 对话框复用标题与内容分离的滚动结构,始终位于软件标题栏下方。放大后仍需保留关闭入口与可达的确认/取消按钮。

  • 批注、书签列表保留 S/M/L 调节,分别引用同一组三档变量,禁止独立生成第四档字号。

  • 查看模块的界面字号设置全局预览,确认才持久化;取消、关闭、背景点击和 Escape 恢复已保存值。新窗口和重启读取已保存值。按钮右侧显示当前设置并随预览、取消及跨窗口保存同步更新;四个预设始终只有辅助、正文、标题三种角色字号。

  • 十种语言共享同一套字号;RTL 采用逻辑方向,不通过缩小文字解决翻译长度差异。

文字图标与徽标(2.0.28)

  • PDF 等短标记保持单行;使用内容宽度、em 最小尺寸和对称内边距,文字水平/垂直居中。最近文件列表必须采用 max-content 图标列,文件名列使用 minmax(0, 1fr),禁止以固定列宽挤压图标或文件名。
  • 数字胶囊随位数扩展,至少验证 1、12、1234、123456。折叠侧栏允许容纳胶囊宽度;不可用固定 46px 最大宽度裁切计数。单字警示符号不得被 flex 压扁。
  • 作者姓名是可变长内容:独立 span 承担省略号,颜色圆点不压缩,高度按行高增长;完整姓名保留在 title,双向文字用 dir=auto。
  • 颜色选择器紧凑圆心的加号按圆心比例显示 SVG,禁止塞入随字号放大的全角字符。锁等纯图形含义用 SVG,不把“锁”的完整翻译放进方形图标。页面缩略图左右状态徽标各分配可换行区域,中间预留间距,不能靠缩小字体消化长译文。
  • 字号按钮和菜单符号使用内容尺寸;纯 SVG 图标和经四档验证足够大的单字图形可以保留固定尺寸。
  • typography-ui-smoke 同时运行 text-badge-ui-checks:真实欢迎页/打开弹窗覆盖四档×十语言×两主题;其他不能同时出现的徽标用实际样式标本验证几何。新增文字徽标须加入对应检查,不能只验证文档标签栏。

同组控件与滚动条(2.0.29)

  • 批注人/单双行按钮共享 1.35 行高、5px/7px 内边距、28px 最小高度,实际高度由同档文字与图标决定;禁止单独固定一个按钮高度。
  • 阅读工具用等高网格,长译文可以换行并提高整组高度。搜索快捷键以对称负外边距利用按钮内部已有留白,不增加单个按钮的高度;键帽与按钮边界仍须至少保留 4px。
  • 仅四个工具模块开启闲置隐藏原生滚动条:操作后显示 1.5 秒,拖动按住期间保持可见。鼠标移动、滚轮、滚动、焦点和键盘操作均可唤醒;隐藏只改变颜色,稳定滚动槽、内容宽度和滚动位置保持不变。强制颜色模式交还系统控制。
  • typography-ui-smoke 调用 toolbar-ui-checks,检查十语言四字号下的按钮等高及四模块的滚动、闲置、唤醒、原生拖动和布局稳定。

批注编辑与 AI 建议(2.0.30)

  • 选项标题与说明明确分层:标题保留粗体,说明固定常规 400 字重,不继承表单 label 的强调样式。
  • 可缩放编辑窗口必须将多余高度交给正文编辑区;长正文按内容增长,窗口正文负责滚动,窄窗工具栏允许换行。
  • AI 建议沿用同一窗口外框和标题栏,提供返回入口。采用只更新回复草稿,确认才保存;返回或关闭取消该阶段的请求。AI 上下文选择阶段允许操作背景 PDF,返回编辑后恢复背景点击关闭行为。

文档内容边界

PDF 原文、页面文字编辑、页码预览、画板创作文字属于文档内容,按原文或用户选择的真实尺寸呈现,不随界面字号改变。不可见的 .text-map span 保留 1px 映射尺寸。SVG/Canvas 的几何尺寸不属于界面字体大小。

验证要求

运行 test:typography 检查所有 CSS 字体声明;新组件必须使用三档变量或继承。真实窗口检查字号预览、取消、保存重启,整个批注区域滚动,中文/长译文/RTL/大字号和 PDF 缩放独立性。发布流程中对源码及最终包验证。