Webにおける体裁を制御するCSSに関するメーリングリストなどで、最近日本語の縦組におけるイタリック体又は斜体のことが議論になっている。公開されている議論のアーカイブを見ると、Synthesizing oblique, to which direction in RTL and vertical flow?という表題の2013年2月4日付の、Koji Ishii氏によるメッセージが、議論の始まりらしい。そこから議論が広がっているが、ここでは議論の詳細には立ち入らず、基本的なポイントだけについて私見を述べたい。基本的な原則を明らかにすれば、詳細に関する事柄も容易に導けると考えるからである。
何が課題になっているのか
上のURLにあるメッセージが提起している課題は以下のように要約できる。
CSS Fonts Module Level 3は、font-style属性にnormalとitalicとobliqueの指定を可能にしている。その意味は以下のとおり。
さて、ここで問われている課題は、
の2点である。これらについての私の考えを以下に述べる。
日本語タイポグラフィにおいてイタリックは一体何を意味するのか
font-style属性が、normal、italic、obliqueの値の指定を可能にしていることから、欧文のタイポグラフィにおいてnormalをもっとも通常のfont-styleとしていることが分かるだけでなく、このことはつまり、多くの欧文フォントの場合において通常可能なように、ローマン体をnormalとして通常使用し、強調や文献の表題などに必要な場合だけ、スタイルをitalicに切り替えて使用するという慣習をCSSで実現するためのものであることがわかる。つまり、ここでのitalicという値は、normalと対で用いられる副次的なスタイルとしてのitalicのことを意味している。font-style属性だけがitalicに指定されるに過ぎないのである。このことは、イタリック体であれば何でも良いわけではなく、normalの存在を前提として、それと対をなすイタリックを指定するということが、italicの意味するところなのである。同じことはobliqueについても言える。通常のnormalと対で用いられる副次的なスタイルとしてのobliqueを指定するのである。italic以外にobliqueが必要となる理由は、書体デザインによっては、italicが存在せず、normalに対応付けられる通常のスタイル以外にobliqueだけが存在する場合があるからである。しかし、その基本的な機能は、normalとの対としての副次的なスタイルとしてのitalicと同じと考えられる。つまり、normalとの切り替えであり区別である。
端的に言えば、このfont-styleは、特定書体について、そのromanかitalic(またはoblique)の区別を指定するためにある。obliqueはitalicが存在しない書体に対応するための対策に過ぎない。つまり、「イタリックにする」(italicizing)ことが主目的なのである。
では、日本語と和字のために作られる日本語フォントにおいて、あるいは日本語のタイポグラフィにおいて、「イタリックにする」ことはどういう意味をもつのか。それは、和文と欧文とが混じり合ったテキストを組む場合に、欧文にイタリック体を用いる、以外の意味ではありえない。なぜなら、イタリック体というスタイルが和字には存在しないからである。それは、歴史的に存在しないだけでなく、ラテン・アルファベットの文字以外には適用する必然性がない。また、必要性も存在しないのである。欧文においては、normalを基本とし、副次的なスタイルとしてitalicあるいはobliqueを使い分ける慣習が存在し、そのためにすべてではないが多くの書体・フォントが、normalに相当するromanなどのスタイルのグリフとitalicあるいはobliqueのスタイルのグリフを両方備えている。日本語書体やフォントの場合、それはまったくあてはまらない。そもそも、漢字や仮名をイタリックにするということが何を意味するのかさえ、不明である。つまり、日本語においてイタリックは、和文と欧文の混植の場合を除いては、ほとんど無意味なのである。
では、そのような「イタリックにする」ということが、日本語の縦組で指定されている場合には、どう処理すべきなのか。答は単純である。何もしない、できない、のである。これが、上記の問1に対する筆者の答である。さらに、このことが縦組に限定されないことも自明である。
このように考えると、上述の問2は、既に設問自体が無意味であることが分かる。日本語が主に使われる場合には、少なくとも、イタリックにするという文脈(あるいはそのような意図で指定がなされているという状況)が有効な範囲においては、人工的に斜体を生成する方法が不明であり、不可能である。つまり、斜体(obliqueまたはslant)などの人工的な変形処理をどのように適用しても、和字に対してitalicという属性を付与することも、その代替物として機能させることも不可能なのである。なぜなら、和字にはイタリックにする、という用法が存在しないからである。そして、それは用法が確立されていないだけでなく、そもそも別個の文脈で別々にしか成り立たないものだからである。日本語のグリフを、16世紀のイタリアの印刷者や能書家が用いたような筆法で書くこと、それに似たデザインにすることが不可能なのである。
また、「イタリックにする」という文脈を、途中から「斜体に人工的にする」という文脈として拡大解釈することも不可能である。なぜなら、font-styleの属性とは、指定された特定フォントにおいて選択可能なスタイル属性が、多くの場合存在していなければ無意味なのであり、だから欧文フォントに対しては意味があり、日本語フォントに対しては無意味なのである。(ただし、イタリック体のグリフが含まれるなら、和文フォントに含まれるラテン・アルファベットのグリフに対してitalicやobliqueを適用して悪い理由はないし、それはGSUBの利用で可能となるが、そのような対応をした場合でも、漢字や仮名がイタリックにできることにはならない)。
言い方を変えれば、欧文では、Adobe Garamond Italicなどのようにitalicの属性に合致するフォントが現実に存在している。しかし、日本語フォントに、例えば、小塚明朝Regular Italicは存在していない。このことは、日本語フォントを用いる場合、italicやobliqueが少なくとも和字に対しては、一般的に切り替え可能なスタイルとは考えられていないことを示している。
日本語タイポグラフィにおける斜体
さて、日本語タイポグラフィにおけるイタリックの無意味さと不可能性について上に述べた。日本語フォントには、そのようなフォント・スタイルは存在しない。しかし、このことは、日本語タイポグラフィでは、グリフに対して何らかの変形処理を用いて斜体をかけることが不可能であるということではない。実際、光学式の手動写植機の時代から、和字に対しては長体・平体・斜体などの変形処理をかけることは行われてきた。したがって、日本語タイポグラフィにおいても斜体は可能である。ただし、以下の点に注意するべきである。
結論
さて、上に述べたことから、結論は以下のように要約できる。
山本太郎
2013.06.02