フォント TrueType 構造解析 新しいページはコチラ
提供: yonewiki
(→構造) |
(→構造) |
||
68行: | 68行: | ||
entrySelectorはTAG テーブル数が 16(0x10) 以下なら 3。17(0x11) 以上 32(0x20)以下なら4。33(0x21) 以上 64((0x40))以下なら5。の、ように2^n=TAGテーブル数となるようなnがentrySelectorです。 | entrySelectorはTAG テーブル数が 16(0x10) 以下なら 3。17(0x11) 以上 32(0x20)以下なら4。33(0x21) 以上 64((0x40))以下なら5。の、ように2^n=TAGテーブル数となるようなnがentrySelectorです。 | ||
+ | |||
+ | searchRangeは 16 * 2^(entrySelector)という値です。 | ||
+ | |||
+ | rangeShiftは16 * TAGテーブル数 - entrySelector という値です。 | ||
+ | |||
+ | TAGテーブル数から計算できるこれらの値はTAGテーブルの範囲を計算するために必要となるような値になっています。無くても原理がわかっていれば、再度計算できますけど、また計算するという時間を減らすために備わっていると考えてよいでしょう。なんどもなんども、読み込むかもしれませんので、計算量の節約に役立つのかもしれません。上記の値にヘッダ部自体が使う12byteをふくめると最初のテーブルへのoffsetが求まります。 | ||
+ | |||
+ | |||