北屋教程网

专注编程知识分享,从入门到精通的编程学习平台

InDesign正则表达式实例(二):规避孤字、孤行。

注:本文不适合零经验、入门级者。目标读者是有一定InDesign使用经验的进阶人群。

当我还是一只菜鸡的时候,一位老同事告诉我一个原则:孤字不成行、孤行不成页。(这是中文排版传统上的规则。但也遇到过设计上特意不遵循这个规则的情况。)

孤字

是指段落末行仅有一个汉字,或一个汉字加上标点符号。一般解决办法是,调整字距,使段落末行能有两个汉字以上。

孤字的自动处理

一个个段落去设置,偶有遗漏。有时候按下葫芦浮起瓢,也显得额外笨拙。

我们可以通过InDesign在技术上实现自动处理。实现段落结尾处,除标点符号外,最少有两个或以上的正文字符。

GREP公式:..[[:punct:]]*$

解析:先设置一个有不断行的属性给字符样式。然后利用段落样式中嵌套的GREP公式,实现自动套用这个字符样式。

代码..,代表2个任意字符。

代码[[:punct:]],这是一个特殊的字符集,代表任何中文或英文的标点符号。

代码*,代表前面的项目出现0次或多次


孤行

是指页面中第一行为前一页最后一个段落的末行。实际工作中,除个别作者有强迫症,要求全部处理以外,通常可以接受,排版并不用处理。

但有两个情况例外,必须处理:1. 这页只有这一行;2. 这个孤行后紧接着是一个标题。

通常的解决办法是,将孤行移至前一页,使其突出版心;或者前一页最后段落取一行过来当前页;使上一页不齐版心。

孤行的自动处理

这里用GREP貌似实现不了,但我们可以用简单粗暴的办法,在段落样式中加入限制,使段落最后必须有2行或以上。即可规避孤行的出现。


暂时写了这一些。若各位有其他特殊格式需要匹配的,请留言,我们共同探讨。

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言