日本語を縦組みしたときに、文字の方向をどう決定するかということについて、何回もブログで書いてきましたがこれはかなり悩ましい問題です。CAS-UBでも縦組のPDFを生成したり、EPUB3には縦組みレイアウト用CSSを指定できますので、早急に整理しなければならないと思っています。
UnicodeやCSSワーキンググループでは、この検討が精力的に行なわれており、UnicodeのUTR#50が先日(5月17日)ドラフト第5版になりました。
http://www.unicode.org/reports/tr50/tr50-5.html
今回の大きな変更点は、レポートの表題が「Unicode Properties for Horizontal and Vertical Text Layout」に変わったことです。従来は、「Unicode Properties for Vertical Text Layout」でしたが、今回から横書きでの文字の方向に関する記述が追加になりました。
横書きプロパティが追加になりました。
○プロパティ
横書き(Horizontal Orientation、HO):横書き用
縦積み方向(Stacked Vertical Orientation、SVO):文字がほとんど正立する世界における縦行用
混在縦組み方向(Mixed Vertical Orientation、MVO):東アジア、特に日本、中国、韓国の縦行用
UTR#50はUnicodeの文字に対して3つのプロパティにおける文字方向のデフォルト値を規定するものです。
○プロパティ値は次のように規定されます。
U:コード表に表れるのと同じ方向で、正立表示する文字
R:コード表を時計方向に時計方向に90度回転して、横倒しで表示する文字
L:コード表を時計方向に反時計方向に90度回転して、横倒しで表示する文字
T、Tu、Tr:単に正立または横倒しではなくて、縦組みで使うときはコード表とは異なるグリフを必要とする。Tuはフォールバックとしてコード表のグリフを正立で使うことができる。Trはフォールバックとしてコード表のグリフを時計方向に90度回転して使うことができる。
Unicodeの各文字に対するプロパティ値のデータ表が提供されています。
○http://www.unicode.org/reports/tr50/tr50-5.Orientation.html
第5版では、プロパティ値のデータ表に、HOの列が追加になりました。一方、MVOの値は、これまでA案とB案提案されていましたがB案に一本化されました。
■問題点
UTR#50には、かなり大きな問題があります。
その1:SVOとMVOが明確に規定されていないこと。
原文は次のようになっています。
SVO:「… intended to be used for vertical lines in those parts of the world where characters are mostly upright. 」
MVO:「… intended to be used for vertical lines in East Asia, and more specifically in Japan,…」
MVOについてはサンプルの図3があり、和欧混植の組版を意味していることは明らかです。しかし、SVOの定義でいうところの「文字がほとんど正立する世界」とは一体どこのことなのでしょうか?MVOの定義には「東アジア特に日本の縦書きの行」とありますので、するとSVOは日本は属さないと読めてしまいます。
このあたりの定義をもっと明確にする必要があります。たとえば、SVOは和文のみ、MVOは和文と欧文が混ざるときというように。しかし、おそらく少なくとも日本語の書籍についてはSVOという世界はほとんど存在しないので、日本語の書籍ではあまり意味がない概念でしょう。
その2:方向特性値の決め方がまずい。
方向特性値は、「This default determination is based on the most common use of a character, …」とあります。つまり、デフォルトの方向は文字の最も一般的な使用法に基づいている、とのことです。しかし、最も一般的な使用法をどうやって判断しているか理解できません。
たとえば、プロパティ値のデータ表で見ますと、アラビア数字(ASCIIコード範囲)は、MVOで「R(横倒し)」と決めています。
MVOのサンプルである図3(Figure 3. Japanese vertical text)には数字が3箇所に出てきますが、いづれも正立で、横倒しになっていません。アラビア数字をMVO:Rとするのは、このサンプル図に矛盾しています。たった1枚の図で判断するなよ、と言われるかもしれませんが、しかし、日本で実際に販売されている縦組みの雑誌や書籍では、アラビア数字の大半は正立です。これは市販の縦組本を少し調査すればすぐに分るはずです。
たとえば、このブログで先週調査結果を報告した「刑務所なう。」には、アラビア数字が数百箇所はでてきますが、横倒しになっている箇所はほとんど例外的と言って良いほど少なく、アラビア数字の99%以上は正立しています。
○「刑務所なう。」にみる縦組みにおける英数字・記号の向きを参照のこと
方向特性値を「(市販の書籍や雑誌における)最も一般的な使用法」とするならば、例えばアラビア数字(ASCIIコード範囲)は、間違いなくMVOで「U(正立)」にしなければならないでしょう。そうするとUTR#50の「最も一般的な使用法」はどうやって決めているのでしょうか?
もしかすると、InDesignのデフォルトが横倒し?そうすると、DTPオペレータが毎回せっせと数字を立てていることになるのですが。
ここで白状しますと、AH Formatterもアラビア数字(ASCIIコード範囲)は、MVO:Rなのです。困ったな。
つまり、いままでは英数字はASCIIコード範囲は縦書き時横倒し、互換コード範囲は正立という方式がずっとすべてのアプリケーションの実装となっていたのです。で、方向特性値を「(ベンダにとって)最も一般的な使用法」と定義すれば矛盾はなくなるのですが、それで良いのだろうか?いや、それではだめだろう、ということなのです。