T02中英文、中文与数字之间要有间距
汉字和字母、数字挤在一起,读的时候要自己找边界。measure.css 打开 text-autospace,浏览器自动留出约四分之一个字的空隙,文案里不用手打空格。


分寸 · Measure
给 Claude Code、Codex 这类编码 Agent 用的中文排版 skill,加一个离线校验器 measure-cjk:查字号、字距、行长、行高、标点和字体授权,并用浏览器实测。
同一个 Agent、同一个模型,30 条中文页面提示词,装和不装 measure 各生成一次,用 measure 的完整档检查。
模型 gpt-6-astra
模型 claude-opus-5-5
docs/verification/w2/northstar/。以下是示意,不是实验结果:同一段文字,“关”只差一条规则,“开”是按 measure 改好的版本。两版都用 measure-cjk lint --render 检查过:“关”只报这一条规则,“开”零 error。“关”的程度按实验里真实页面的情况设,不故意做得更差。
没有做示意的规则:T01(声明中文 lang)和 T13(字体栈里要有中文字体)的效果取决于浏览器和系统字体,一张图说明不了;T04(行首禁则)在 Chrome 里开不开,常用中文标点都不会落到行首,看不出差别。
汉字和字母、数字挤在一起,读的时候要自己找边界。measure.css 打开 text-autospace,浏览器自动留出约四分之一个字的空隙,文案里不用手打空格。


半角逗号、句号、问号又小又靠下,夹在汉字中间像没打完。中文句子用全角标点,字距才均匀。


一行太长,眼睛从行尾回到下一行行首时容易串行。中文正文每行 28–40 个字最舒服,宽屏上要给正文限宽。


汉字是方块字,字面撑满整个字身,行与行之间比西文更需要留白。行高 1.35 时上下两行已经显得挤,正文建议 1.6–1.9。


西文大标题常用负字距收紧,搬到中文上,笔画会碰在一起。中文标题保持默认字距,靠字重和留白拉开层次。


中文字体没有真正的斜体,浏览器只能把字形硬生生歪过去。强调中文,用加粗、颜色或着重号。


西文 10px 还能辨认,汉字笔画多,10px 时笔画会糊成一团。价格说明、标签这类小字,中文也不要小于 12px。


每组第一张是不装 measure 时 Agent 生成的页面,红框是完整档查到的问题,标签是规则编号和在这张截图里当场量到的值;第二张是装了 measure 后,同一条提示词生成的页面。截图窗口都是 1280px 宽:第一张截红框所在的位置(多数就在首屏),第二张截首屏。
提示词:做一篇旅行游记的网页,讲在云南大理住了两周的见闻,配几个小标题。


提示词:做一个设计素材网站的会员价格页,分免费版、专业版、团队版三档。


提示词:做一个 AI 写作助手的产品介绍页,突出它能帮用户改周报和邮件。


提示词:写一篇关于“为什么年轻人开始重新用纸质笔记本”的博客文章页面,大约 800 字。


每个主题一个文件(不超过 8 KB):设计变量、字号阶梯(字号越大字重越轻)、字体栈、该做和不该做。6 个示例页用同一段文字,CSS 原样取自主题文件,都用 measure-cjk lint --render 检查过。
现代报纸。报头、双线、分栏和栏线;标题宋体,正文黑体。
适合:长文、资讯、周报、newsletter。
示例页 lint:0 error,1 条 warn(T06,主题文件里写明了原因)。打开示例页
工业说明书。全黑体,编号体系(1、1.1),细线表格,单色。
适合:产品文档、快速上手、操作步骤、规范。
示例页 lint:0 error。打开示例页
档案馆。牛皮纸底,编目号用等宽字体,正文宋体,登记表式的线框。
适合:项目记录、版本历史、研究笔记、作品集的说明页。
示例页 lint:0 error。打开示例页
文艺杂志。大留白,宋体正文,标题字号大、字重轻。
适合:随笔、访谈、长读、品牌故事。
示例页 lint:0 error。打开示例页
宋刻本。竹纸底,浓墨,仿宋或宋体,正文落在界栏里;可选竖排(示例页没有竖排示例)。
适合:古籍摘录、诗文、文化类长读、题跋。
示例页 lint:0 error,1 条 warn(T06,主题文件里写明了原因)。打开示例页
米纸、墨、青瓷、朱砂;克制、留白优先。色板取自 dososo-design-system。
适合:产品官网、展示页、个人主页、小红书卡片(卡片模板就是这套色板)。本项目的展示页用的就是这个主题。
示例页 lint:0 error。打开示例页
校验器单独发布在 npm 上,skill 按你用的 Agent 安装:
npm install -g measure-cjk/plugin marketplace add dososo/blcaptain-measure-cjk,再 /plugin install measure@blcaptain-measure-cjkcodex plugin marketplace add dososo/blcaptain-measure-cjk,再 codex plugin add measure@blcaptain-measure-cjknpx skills add dososo/blcaptain-measure-cjk源码、规则文档和实验数据在 GitHub。