のねのBlog

パソコンの問題や、ソフトウェアの開発で起きた問題など書いていきます。よろしくお願いします^^。

Serialized data

Serialized data

After the coordinate data for the glyph's tuples is a block of serialized data. This data contains the points the tuples operate on and their deltas.

If the tuples_share_point_numbers flag is set, the serialized data begins with a packed set of point numbers which are used by all the glyph's tuples. The format for packed point numbers is below.

The remaining serialized data contains information specific to the individual tuples (in order). Since the tupleHeader contains the number of bytes of serialized data the tuple uses, it isn't necessary to parse the serialized data for tuples which aren't applied.

If the tuples_share_point_numbers is clear, then each tuple's serialized data begins with the packed list of points the tuple operates on. This is followed by the packed deltas for the points' x-coordinates, and then the packed deltas for the points' y-coordinates.

シリアル化されたデータ

グリフのタプルの座標データが直列化されたデータのブロックの後です。
このデータには、タプルが操作するポイントとそのデルタが含まれています。

★tuples_share_point_numbersフラグがセットされている場合、
直列化されたデータは、
すべてのグリフのタプルによって使用される
パックされた点番号のセットから始まります。
パックポイント番号の形式は次のとおりです。

残りのシリアライズされたデータには、
個々のタプルに固有の情報が(順番に)含まれています。
tupleHeaderには
タプルが使用するシリアル化されたデータの
バイト数が含まれているため、
適用されていないタプルの
シリアル化されたデータを解析する必要はありません。

★tuples_share_point_numbersがクリアされている場合、
各タプルのシリアル化されたデータは、
タプルが動作する点の
パックされたリストから始まります。

これに続いて、
ポイントのx座標のパックデルタと、
ポイントのy座標のパックデルタが続きます。