标点挤压 适合谁看:觉得中文段落里标点「空得太多」,想知道怎么收紧的设计师和开发者。 为什么要挤压 中文标点(除省略号、破折号等占两格的以外)通常占一个汉字的宽度,但字形只占其中一半左右,另一半是空白。两个标点连在一起,比如「。」」或「)、」,中间就会出现很大的空隙。 clreq 说明:是否调整标点宽度属于排版风格。台湾很多印刷品不调整;中国大陆和香港的出版物多数会调整。 连续标点怎么挤 clreq 给出的原则: 两个相邻标点原本占 2 个字宽,应缩减为 1.5 个字宽;排版风格可以进一步缩到 1 个字宽; 挤压的方向是让开始、结束的夹注符号(引号、括号、书名号)紧贴被夹注的内容。 例如「他说:“好。”」中,「。”」两个标点连在一起,就要把空白挤掉一部分。 行首、行尾的标点 行首出现开始的引号、括号时,可以去掉它前面半个字的空白; 依照 GB/T 15834—2011 第 5.1.10 条,原本占一个字宽的标点出现在行尾时,应缩减其末侧半个字的空白。 哪些标点不能挤 clreq 列出的不可调整标点包括:大陆式的半字连接号、间隔号、分隔号(本来就只占半字);港台式横排的问号、叹号,以及竖排的冒号、分号、问号、叹号(固定占一个字宽)。 软件里怎么做 InDesign:段落设置里的「标点挤压」(Mojikumi)设置,可以选用或自定义挤压规则; 网页:CSS 的 text-spacing-trim 属性可以处理连续标点和行首标点的挤压,目前只有 Chrome 系浏览器支持(Chrome 123 起),见《在网页上实现中文排版:CSS 速查》; 字体:有的字体自带 halt(半宽替代)、 chws(上下文半宽间距)等 OpenType 功能,排版软件或 CSS font-feature-settings 可以调用。 参考资料