Re: 舱璶― CSS Text Level 3  'text-spacing'

讨论好激烈。。。

说起来,以中文为主的那种排版法,实际是像在印好方格的纸上写字,所有非汉字以某种方式调整到若干方格中。似乎确实有这样的grid排版法。尽管我个人认为这是过去技术所限的落后方式(或许有少量其他需求,比如小朋友练字?),不过让CSS提供这样的可能性也是必要的。


2013/11/12 Bobby Tung <bobbytung@wanderer.tw>

> 開一天會,累了。
>
> 容我說一句,台灣@邊其實業界標準很亂,但有跡可循。
>
> 業界怎麼做,沒變成國家標準,或者不是一目瞭然(也就是說,每本書拿出來都一樣)的話,實在也不能說是標準。
>
> 既然沒有標準,我們看看要怎麼做。是要祖先家法不可動搖般的全部搬上來,像JLREQ中實際已經沒人用的割注[1]。
>
> 還是要依時代來找到新的方法。老貓的想法很好,但要是Test-case做出來,不如想像中的那麼順暢,那就是需求開得有問題了。
>
> 不過@也好玩,Bert Bos看到本草綱目[2],想用CSS做出@種效果。
>
> 另外,英文(以及法文等)的Layout目前也是有問題的。例如今天談到widow/orphan問題。
>
> 現在break:all不會加hyphen,但未來不確定。在老貓這套規則中,假設以常見的[子音]ing來看,hyphen後取四字,加一半形hyphen,
>
> 然後會造成約1.5em空白,加到字前,@@得怪。
>
> 先睡。
>
>
>
> [1]: http://www.w3.org/TR/jlreq/ja/#inline_cutting_note

> [2]:
> http://www.library.metro.tokyo.jp/digital_library/collection/the16/tabid/1908/Default.aspx

>
> octw chen <oc.tw.mail@gmail.com> 於 2013/11/11 下午11:34 寫道:
>
> 是嗎,我看到的日文排版只會壓縮引號類的標點,並不會
> 拉散漢字字間。
>
> oc
>
>
> 梁海 <lianghai@gmail.com> 於 2013年11月11日下午11:28 寫道:
>
>> @老猫:
>> 是的,所以你偏好全中文和零星西文文本用有标点悬挂、无标点挤压的齐头尾,而大量西文混排时用无标点挤压的左齐。
>> 但中日排版界对于大量 proportional 西文与中文混排且齐头尾时的共识是:使用标点挤压,酌情使用标点悬挂,允许把
>> justification 的空白调整分散到汉字间,不允许强制在西文词中断行,酌情使用 hyphenation。
>> 如果想要推广自己的主张,没问题,但在业界习惯面前只是念叨个人偏好就实在没有什么意义了。
>>
>> --
>> LIANG Hai 梁海
>>
>> On 2013年11月11日 Monday at 23:17, octw chen wrote:
>>
>> 事實上相較於「句尾留下空白」,我更容易被「略有調整」的字間
>> 干擾。
>>
>> oc
>>
>>
>> 梁海 <lianghai@gmail.com> 於 2013年11月11日下午11:07 寫道:
>>
>> 西文当然也不喜欢「字間距忽緊忽鬆」了,所以就或者就用左齐,或者齐头尾时启用 hyphenation 以减少行末空格并且使用优质的
>> justification 算法。
>> 但不喜欢不代表不允许,西文排版界的做法是尽量不让 justification 带来的字距变动被人察觉到,而不是不允许字距变动。
>>
>> 同样,典型的中西文混排时,如果西文在行末,西文的可选断行点比中文少(尤其不启用 hyphenation 时,而中西文混排面对的中文读者恰恰不习惯
>> hyphenation,而且中西文混排时最多的西文内容就是人名、地名、术语等专名,而专名是最不该 hyphenate
>> 的),导致行末常有巨大的空白,那么齐头尾时最好的办法就是把这些空白分散到肚量最大的汉字间距中——否则就如你们前面的讨论一样,只能强制断行了,而强制断行虽然对
>> URL 之类的东西没什么问题,但对普通的西文字词不合理。
>>
>>
>> 而如果西文不在行末,西文引发的行末空白不会大于一个汉字的宽度,这种空白分散到几十个汉字的间距中,并不会有什么问题(而且中西文间距和西文词间距获得的空白分配会多得多,而汉字间距获得的空白分配很少)。排版者要做的是避免字距变动影响读者,而不是自缚手脚拒绝字距变动——除非有不做字距变动的资本,比如全汉字或只有零星西文。
>>
>>
>> 「而不是因為電腦能計算,就把違背易讀性的解法視為可接受」——不是因为电脑能计算,是因为「中西文间距显著不稳定」比「汉字间距略有调整」更不利于阅读,而后者根本就不「違背易讀性」。
>>
>> —
>> LIANG Hai 梁海
>>
>> On 2013年11月11日 Monday at 22:45, octw chen wrote:
>>
>>
>>
>>
>> Bobby Tung <bobbytung@wanderer.tw> 於 2013年11月11日下午10:25 寫道:
>>
>> 「例如繁體引號[「]與雙引號[『]慣用全形」
>>
>> ——这种「惯用」只是在标点统一占一字宽、无标点挤压的情况下如此。当有标点挤压的时候,直角引号、圆括号、尖角书名号之类的标点就没有理由不挤压了。(大陆的标点符号规范中,横排实际上不用直角引号,所以其实没有对直角引号在行首行末挤压与否的习惯。)
>>
>>
>> @要問問老貓了,活字排版上,我是看過引號是有切成半形的做法。
>>
>> 現在台灣出版社一般多用全形?至少我@邊轉制遇到的案例是如此。
>>
>>
>> 有@種情況都是不得已的。都是跟其他選擇比較之下的不得已,
>> 我認為維持全形,比「視情況改為半形」要好。
>>
>> 鉛字的解法確實未必是現在的準則,但易讀性是不分時代的,甚至也不
>> 分中西的。就說字間吧,西文一樣不喜歡字間距忽緊忽鬆,漢字當然應
>> 該提供穩定字間距的解法。而不是因為電腦能計算,就把違背易讀性的
>> 解法視為可接受。
>>
>> oc
>>
>>
>>
>> 「標點懸吊,今天談到最後,其實發現實做的難度相當高,所以想依賴其處理中文避頭點,不大靠譜。」
>>
>> ——是说 `hanging-punctuation` 可能会因为 UA 方面难度太大而被移出 CSS3
>> 吗?「所以想依賴其處理中文避頭點,不大靠譜」指的是什么呢?标点悬挂和避头尾不是平行的两件事吗?
>>
>>
>> 不會移出,但拖個幾年做不出來也一樣啊。
>>
>> 不靠譜是指,日文書中的結束引號[」]前不加句號,而且有著前面的處理方式,所以沒有問題。
>>
>> 但結束引號不在標點懸吊目前的範圍中,所以依然還得靠Justification。或者規則寬鬆,讓它出現在行頭。
>>
>> 「不分音節的hyphenation」
>> ——呃,「不分音节」的「hyphenation」?
>> 难道指的是 *hyp*
>> *henation* 这样?
>> 或者是 *hyp-*
>> *henation* 这样?
>> 前者那个就是强制断行而已,类似于 `word-break: break-all` 的行为,都没有
>> hyphen,怎么能说「hyphenation」;后者倒是有 hyphen,但这种「hyphenation」是完全违背西文习惯的,还不如不加。
>>
>>
>> 保留。
>>
>>
>> - - -
>>
>> 中西文混排(这里指的是充分的中西文混排,即大量西文混杂于汉字文本中)的事情上不能太重视铅字时代的案例吧,只能参考。铅字排版天生是难以在
>> justification 过程中调整字距的(如 @老猫 所言),而当代 DTP
>> 的优势就是对字距的自动分配(乃至专业排版环境中,智能分析整段文本的换行位置,在整段文本中调整字距)。
>>
>>
>> —
>> LIANG Hai 梁海
>>
>> On 2013年11月11日 Monday at 20:56, Bobby Tung wrote:
>> 抱歉,@裡我講得有點模糊。
>>
>> 先講一下今天會議的狀況。Digital Publishing IG與i18n一齊開會,未來會由@個興趣小組蒐集各國的排版需求。
>>
>> 先談談我思考的順序,我們得先定排版原則,再處理細節,然後再談實作的問題。
>>
>> 我認為中文排版由於方塊字[1]排版的歷史,應該有兩個原則:
>>
>> 1,無論直排、橫排,每行行首、行尾皆要對齊。
>>
>> 2,無論直排、橫排,每行內每字儘量縱橫對齊。
>>
>> 我看了@本1966年出版的書,裡頭有中西混排,但能保持1的一致性,但因為間距調整,2只能略微保持。
>>
>> 但當時沒有避頭點。
>>
>> 我們肯定兩項事實:
>>
>> i. 避頭點能夠增加易讀性,而且能確實地做到較好的排版效果;
>> ii.  中文與英文混排的書是常態。
>>
>> 若要維持i,就得提出中文(包括簡體、繁體)的排版規則。同時也要列出差異之處。例如繁體引號[「]與雙引號[『]慣用全形。
>>
>> (也有使用日文減半處理的方法,@在過往活版印刷中也有範例)但簡體中文則會使用減半的方式處理(根據梁海所述)。
>>
>> @些規則列出來了,使用text-align: justify; text-justify: ideograph-alpha,
>> ideograph-numeric; [3]就能得到符合1的行首、行尾對齊的效果。
>>
>>
>> 但若要更進一步符合2的縱橫對齊,我會視為新的處理提案。當然我想做個考古,看看過去活字排版時遇到中西混排時,是否會插入1/4、1/3、1/2空白來保持平衡。
>>
>> 如果過去@麼做的話,老貓那中西文間距採 0.5em~ ?em間的做法就更能有背景支持。[4]
>>
>> 加上梁海提到的,當西字突出句末時,還要加上不照音節的hyphenation。@一點台灣出版商是會@麼排的。
>>
>> 以下是額外話。
>>
>> 標點懸吊,今天談到最後,其實發現實做的難度相當高,所以想依賴其處理中文避頭點,不大靠譜。
>>
>> 另外,依照JLREQ[5]的編撰方式,老貓@想法不會列入中文排版需求中。但對方有JISX-4051國家標準,照國家標準是標準程序。
>>
>> 我們一下跳到@一步,就是要把過往沒做的事給做掉,並且加入新的處理方法進去。
>>
>> 同時,簡體中文與繁體中文是分開的,同時也必須與日文間做出差異處理,當交付CSS WG時,在值的指定上更精準。
>>
>> 好了,說完了。我@個案子今年底也結了,要繼續下去,不曉得有沒有Sponser?
>>
>>
>> [1]:  https://www.dropbox.com/s/t134pdei8cx10l5/%3F%3F.jpeg

>> [2]: 史梅岑《中國印刷發展史》台灣商務印書館, 1966初版
>> http://books.google.com.hk/books/about/中國印刷發展史.html?id=FxcxNP9YlzcC

>>
>> https://www.dropbox.com/s/aqeb1qo9ow4c37x/%E8%9E%A2%E5%B9%95%E5%BF%AB%E7%85%A7%202013-11-11%20%E4%B8%8B%E5%8D%888.34.01.png

>> [3]: http://www.w3.org/TR/css3-text/#text-justify

>> [4]: 此處的?是指,我不認為最小間距會極小,例如小到HAIR SPACE[U+200A]。
>> [5]: http://www.w3.org/TR/jlreq/

>>
>>
>> 梁海 <lianghai@gmail.com> 於 2013/11/11 下午5:53 寫道:
>>
>>  嗯,其实对于纯汉字排版时的纵横对齐需求,只要开启标点悬挂就可以了。
>> 而 `hanging-punctuation`(标点悬挂)这个属性已经在 CSS3 的草案里了。
>> 所以如果各家浏览器厂商跟进迅速,你的愿望或许在一两年内就能实现了。
>>
>> 现在说的希望加入 CSS3 的 `text-spacing` 这个属性主要处理的是 InDesign
>> 里「标点挤压」负责的那些事情(中西文间距、标点之间的挤压、标点在行首行尾的挤压……)。
>> 目前这个属性的草案见此 http://www.w3.org/html/ig/zh/wiki/Css4-text#text-spacing-prop

>> 目前草案中的确没有考虑到少量西文与中文主体混排时纵横对齐的需求。如果要提供这个选项,须研究如何设计方案。
>> @老猫 或许可以抽空详细写一下中西文混排时「纵横对齐」的具体行为?
>>
>>
>> --
>> LIANG Hai(梁海)
>>
>> On 2013年11月11日 Monday at 17:39, octw chen wrote:
>>
>> 謝謝你終於理解我的需求。大量中英文混排,用現狀
>> 就已經可以解決,我當然不需要為已經有解的情境再
>> 找更多解法。
>>
>> 我情境很簡單,如果有純漢字排版,或少量中英文混
>> 排的場合,我需要一個縱橫對齊的選項。
>>
>> 請勿再用大量中英文混排來模糊焦點,謝謝。
>>
>> oc
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>
>

Received on Monday, 11 November 2013 19:21:26 UTC