Re: [clreq] Need to add details on Line Adjustment (#255)

As discussed in last editor meeting via Skype, I am now rewriting this part as following:

> 3.5 行内调整 Line Adjustment
> 3.5.1 行内调整的必要性 Necessity for Line Adjustment
> 由于「3.1.4 行首行尾禁则」等原因造成行的长度长短不一,这时需要进行「行内调整」。在除了「3.1.5 符号分离禁则」以外的的地方,先将整段文字按照指定的行长断开,排列成行。对于除了段落最后一行以外的各行,其行首、行尾必须分别放到指定行长的位置。对于段落最后一行,原则上按照排版风格进行标点宽度调整即可,末尾没有必要与指定行长的行尾对齐;最后一行需要调整的特殊情况,请参照 「3.4.4孤行与孤字处理」。而当段落有且仅有一行时,请参照 「3.4.3对齐处理」。
> 
> 造成需要行内调整的原因有很多,主要有:
> a. 行内夹杂了阿拉伯数字、西文等非一个汉字字宽的字符;
> b. 标点符号连续出现,且按照 「3.1.6.2 连续标点符号的调整」的原则性调整之后与事先设定的行长不一致;
> c. 行内混用不同字号,比如该行有「行内夹注」并使用了小一些的字号;
> d. 标点符号依照 「3.1.4 行首行尾禁则」进行了处理
> 
> 与西文排版不同,中文排版特别是书籍正文排版极少使用左齐右不齐,原则上应该进行两端对齐。西文排版两端对齐(justification)时,主要是调整单词之间的间隙(词距),而中文排版在两端对齐时,能调整的地方更多,具体如下所述。
> 
> 3.5.2 挤压处理和拉伸处理 Reduction and Addition of Inter-Character Spacing
> 行内调整的对象是需要按照预先定义的可调整空间,如西文词距、「3.1.6.1 标点符号的调整空间」等等。行内调整有以下两种方法:
> a. 挤压处理
> 「挤压处理」是指按照预先规定的排版风格,压缩西文词距、中西间距和「3.1.6.1 标点符号的调整空间」等处的做法。
> b. 拉伸处理
> 「拉伸处理」是指按照预先规定的排版风格,拉伸西文词距、中西间距以及其他未被特殊规定禁止调整等处的做法。
> 
> 出于紧凑易读、节约版面的思路,行内调整要遵循「先挤压、后拉伸」的原则,即应该先挤压处理,仍旧无法满足需求之后再进行拉伸处理。
> 
> 注释 NOTE:本文涉及到行内的「西文词距」调整,仅是针对「在中文排版内混排的西文」,因此,与纯西文排版的习惯不尽相同。一般的西文排版中的词距,需要依照所用字体、字号、字距进行不同判断,而且一般只拉伸、不挤压。
> 
> 3.5.3 挤压处理的优先顺序 Procedures for Inter-Character Spacing Reduction
> 行内调整的挤压处理,应该按照下述步骤,确定挤压的优先顺序后依次进行处理:
> 
> 1. 位于行末的标点。若有调整空间,则调成固定的半个汉字宽。(注释:行末的句号,在日文排版中往往不进行挤压处理。但是对于中文排版,一般要进行处理,这对于中国大陆的排版规范尤其重要。《GB/T 15834-2011 标点符号用法》有明确规定「5.1.10 标点符号排在一行末尾时,若为全角字符则应占半角字符的宽度(即半个字位置),以使视觉效果更美观。」)
> 2. 位于行内的西文词距。一行内若有多处西文词距,应该同时、同等量处理,每个西文词距最小可以挤压到四分之一汉字宽。
> 3. 位于行内的间隔号。挤压时必须同时从字面两侧、同等量处理,最小挤到0,即变成半个汉字字宽。
> 4. 位于行内的夹注符号。可以对开始夹注符号的前侧、结束夹注符号的后侧进行挤压。一行内如有多处,应该同时、同等量处理,最小可以挤压到半个汉字字宽。
> 5. 位于行内的逗号、顿号、分号。挤压空间依照「3.1.6.1 标点符号的调整空间」,可以是后侧,也可以是字面两侧同时。一行内如有多处,应该同时、同等量处理,最小可以挤压到半个汉字字宽。
> 6.  行内的中西间距。一行内若有多处,应该同时、同等量处理,最小挤为八分之一汉字宽。(注释:在一些排版风格中,中西间距固定默认宽度[如四分之一汉字宽],被排除在行内调整对象之外,不允许被挤压。)
> 7. 位于行内的句号、问号、感叹号。依照「3.1.6.1 标点符号的调整空间」,如果有调整空间则可以挤压,最小挤为半个汉字字宽。(注释:由于句末标点表示停顿较大,因此有些排版风格禁止此项调整,而保持句号、问号、感叹号固定一个字宽。)
> 
> 3.5.4 拉伸处理的优先顺序
> 
> 行内调整的拉伸处理,应该按照下述步骤,确定拉伸的优先顺序后依次进行处理:
> 
> 1. 西文词距。一行内若有多处西文词距,应该同时、同等量处理,每个西文词距最大可以拉伸到半个汉字字宽。
> 2. 行内的中西间距,从默认宽度[如四分之一汉字宽]开始拉伸,一行内若有多处,应该同时、同等量处理,最大可拉大到半个汉字字宽。(注释:很多排版风格在实际处理上,只允许最大拉伸到三分之一汉字宽。与上述挤压处理一样,在一些排版风格中,中西间距固定默认宽度[如四分之一汉字宽],被排除在行内调整对象之外,不允许被拉伸。)
> 3. 若上述所有项目均无法调整,则只能针对剩余所有字符间距,进行同时、同等量拉伸,但是:
>   a. 禁止对「3.1.5 符号分离禁则」规定的字间距进行拉伸处理
>   b. 尽量避免对连接号、分隔号与其前后的字符进行拉伸处理 

-- 
GitHub Notification of comment by ryukeikun
Please view or discuss this issue at https://github.com/w3c/clreq/issues/255#issuecomment-674470480 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Sunday, 16 August 2020 02:48:43 UTC