9.172019
5.<ベンガル語の⽂字結合のしくみ3>
こんにちは、カルチスタッフです。
前回に引き続き、どのような仕組みでベンガル語の⽂字が結合するのかを⾒ていきましょう。
⼿順は次の4つです。
(1)ベンガル語の単語を⾳節で区切る
(2)変形しやすいように⽂字を並べ替える
(3)フォントファイルに収録されている情報に基づいて⽂字を変形する
(4)フォントファイルに収録されている情報に基づいて記号の位置を調整する
今回は、
(3)フォントファイルに収録されている情報に基づいて⽂字を変形する
について説明したいと思います。
⽂字の変形は、⾳節の中だけで起こります。
⾳節について詳しく知りたい⽅は3.<ベンガル語の⽂字結合のしくみ1>を復習してください。
■フォントファイルに収録されている情報について■
フォントファイルには「GSUB」と呼ばれる⽂字変形情報が含まれています。
「GSUB」は「Glyph substitution data」の略です。ここでは、「グリフ置換情報」と呼びます。
ベンガル語では、複数の基本の⽂字を1つの結合⽂字に置き換えて表現する必要があるため、この「グリフ置換情報」が不可⽋です。
簡単に「グリフ置換情報」の中⾝を説明します。
下に⽰す表が「グリフ置換情報」の⼀例です。ここでは「グリフ置換情報」の⼀部のみを紹介しています。「グリフ置換情報」のデータ数は、フォントにより異なります。ベンガル語フォントの場合は、500 程度の置換データが含まれます。
次に、表<GSUB データ例>をどのように使うかを説明します。
ベンガル語の単語中の⽂字列と、この表を照らし合わせて、⽂字列中に、下表「⽂字1〜⽂字3」の並びがあった場合は、「置き換え後の⽂字」と置き換えます。
<GSUB データ例>Index1 は、
ベンガル語の単語中に、 の並びがあった場合、この3⽂字を1⽂字に置き換える
という指⽰を表します。
<GSUB データ例>*レーパフォーム・下フォーム・後フォーム・半⼦⾳字フォームについては2.<ベンガル語の結合⽂字>も参考にしてください。
■⽂字を変形してみよう■
3.<ベンガル語の⽂字結合のしくみ1>、4.<ベンガル語の⽂字結合のしくみ2>
でも取り上げた単語を使って、⽂字の変形を⾒ていきましょう。
例1)ベンガル語の「こんばんは」
① ベンガル語の単語を⾳節で区切る
4⾳節に区切ることができます。
② 変形しやすいように⽂字を並べ替える
4⾳節のみ並べ替えが起こります。
ベースの直後にハラントがある場合は、ハラントは最後の⼦⾳字の直後の位置に移動します。
③ フォントファイルに収録されている情報に基づいて⽂字を変形する
前述の表<GSUB データ例>を元に⽂字を置き換えます。
⽂字の置き換えは⾳節ごとに⾏います。
・1⾳節⽬は、1⽂字⽬・2⽂字⽬が、<GSUB データ例>中のIndex15 の「⽂字1・⽂字2」と⼀致するため、置き換えが起こります。・2⾳節⽬は、⽂字が1つしかないため、置き換えは起こりません。
・3⾳節⽬は、⽂字が1つしかないため、置き換えは起こりません。
・4⾳節⽬は、3回置き換えが起こります。
まず、1⽂字⽬・2⽂字⽬が、<GSUB データ例>中のIndex8 の「⽂字1・⽂字2」と⼀致するため、置き換えが起こります。さらに、置き換え後の1⽂字⽬・2⽂字⽬が、<GSUB データ例>中のIndex12 の「⽂字1・⽂字2」と⼀致するため、置き換えが起こります。また、置き換え後の、2⽂字⽬・3⽂字⽬が<GSUB データ例>中のIndex10 の「⽂字1・⽂字2」と⼀致するため、置き換えが起こります。これ以上<GSUB データ例>中のデータと⼀致する⽂字がないため、⽂字を変形する処理は終了です。
例2)ベンガル語の「⼊場」
①ベンガル語の単語を⾳節で区切る
2 ⾳節に区切ることができます。
②変形しやすいように⽂字を並べ替える
2 ⾳節⽬のみ並べ替えが起こります。
③フォントファイルに収録されている情報に基づいて⽂字を変形する
前述の表<GSUB データ例>を元に⽂字を置き換えます。
⽂字の置き換えは⾳節ごとに⾏います。
・1⾳節⽬は、⽂字が1つしかないため、置き換えは起こりません。
・2⾳節⽬は3⽂字⽬・4⽂字⽬が、<GSUB データ例>中のIndex2 の「⽂字1・⽂字2」と⼀致するため、置き換えが起こります。
置き換え後の⽂字はこのようになります。例1、例2とも、結合⽂字の形まであと⼀歩です。
次回はベンガル語の⽂字が結合するための最後の⼿順について説明したいと思います。
カルチスタッフ