ActiBookアプリアイコンActiBookアプリをダウンロード(無償)

  • Available on the Appstore
  • Available on the Google play

概要

TET5

font sizecapheightascenderbaselinedescender図6.4フォント固有メトリックタよりも大きくなります。なぜなら、文字サイズはアセンダとディセンダにわたるうえ、さらに行間の追加のアキが加わる場合もあるからです。キャップハイトは、多くの欧文フォントのTやHのような大文字の高さです。xハイトは、多くの欧文フォントのxのような小文字の高さです。アセンダは、多くの欧文フォントのtやdのような小文字の高さです。ディセンダは、多くの欧文フォントのjやpのような小文字のベースラインから下端までの間隔です。ディセンダは通常、負の値です。xハイト・キャップハイト・アセンダ・ディセンダの値は文字サイズの1000分の1を単位に測られます。これらの値はフォントによって異なっており、pCOSインタフェースで取得できます。たとえば、以下のコードはアセンダとディセンダの値を取得します:/*アセンダとディセンダの値を取得*/path = "fonts[" + i + "]/ascender";System.out.println("アセンダ=" + p.pcos_get_number(doc, path));path = "fonts[" + i + "]/descender";System.out.println("ディセンダ=" + p.pcos_get_number(doc, path));なお、アセンダ等のフォントメトリック値は、このフォントによるグリフに対してTET_get_char_info( )を呼び出した後にのみ取得するべきです。言い換えれば、TET_get_char_info( )から返されたフォントIDを用いることは安全ですが、fonts[]配列内のすべてのフォントを評価することは必ずしも埋め込まれたフォントデータからのメトリック値を与えず、PDF FontDescriptor辞書からの不正確な値を与える可能性があります。詳しくはpCOSパスリファレンスを参照してください。グリフと単語の終了点ハイライトを正しく行うためには、単語内の末尾キャラクタの末尾位置が必要になります。TET_get_char_info( )が返す開始点座標x, yとwidth・alpha値を用いれば、横書きでのグリフの終了点を、すなわちそのグリフのアドバンスベクトルの終点(グリフ枠の右下隅)を決定することができます:x end = lr x = x +幅* cos(alpha)y end = lr y = y +幅* sin(alpha)通常の横書きテキスト(すなわちalpha=0)では、これは次の形に省略できます:82 6章:テキスト抽出