この章の目次にもどる
前頁:第2章 TRON コード体系にもどる
次頁:3.5 文章付箋セグメントにすすむ

第3章 TAD 詳細仕様書


3.1 はじめに

本仕様書では、TAD ( TRON APPLICATION DATABUS ) に関しての詳細のデータ構造を説明することを目的としているため、 基本的な BTRON 仕様の実身、仮身、付箋等の概念、 および TAD の目的、概念、位置付け等に関しては特に説明していない。

また、BTRON 仕様システム、 特にファイルシステムとディスプレイ・プリミティブ、 および TRON 仕様コードに関しての知識を有することを前提としている。

3.2 TAD 実身構成

3.2.1 概要

TAD ( TRON APPLICATION DATABUS ) 実身構成は、 BTRON 仕様の実身 ( ファイル ) の全体構成を規定するものである。

BTRON 仕様の実身 ( ファイル ) には、以下の情報が格納されている。

3.2.2 実身レコード構成

BTRON仕様実身(ファイル)はレコードの列から構成され、その各レコードは、 レコードタイプに応じて、そのデータ構成が規定されている。 レコードのサブタイプは、通常レコードの検索等のために使用され、 その内容は特に規定されない。

以下にレコードタイプと、そのデータ構成の規定を示す。

レコードタイプ データ構成の規定
0リンクレコード 標準データタイプ
1TAD 主レコード TAD データ構成
2TAD 注釈レコード TAD データ構成
3TAD 補助レコード TAD データ構成
4予約レコード
5設定付箋レコード TAD データ構成
6指定付箋レコード TAD データ構成
7機能付箋レコード TAD データ構成
8実行機能付箋レコード TAD データ構成
9実行プログラムレコード標準オブジェクト形式
10データボックスレコードデータボックス定義形式
11フォントデータレコード標準フォントデータ形式
12辞書データレコード 標準辞書データ形式
13予約レコード
14予約レコード
15システムデータレコードシステムアプリケーション定義
16〜31アプリケーションレコードアプリケーション定義
TAD 主レコード:

実身のメインデータであり、TAD データ形式である。 基本エディタでの処理対象となる。

TAD 注釈レコード:

実身の注釈としての補助データであり、TAD データ形式である。 実行プログラムファイル内のヘルプ・データ、コピーライトデータ等に使用され、 基本エディタでの処理対象とならない。

TAD 補助レコード:

実身の補助データであり、TAD データ形式である。 その使用方法はアプリケーションに依存し、 基本エディタでの処理対象とならない。

設定付箋レコード:

実身に貼られた設定付箋である。

指定付箋レコード:

実身に貼られた指定付箋である。

機能付箋レコード:

実身に貼られた機能付箋である。

実行機能付箋レコード:

実身の実行メニューとして表示され、実行される機能付箋である。

実行プログラムレコード:

実行プログラムの標準オブジェクト形式であり、サブタイプはCPUのタイプを示す。

0x100〜0x13FTRONCHIP 系 0x00TRONCHIP32
0x140〜0x14F 68000 系 0x4068000
0x4168010
0x4268020
0x150〜0x15F NS32000 系 0x5032032
0x160〜0x16F 86 系 0x608086 / 8088
0x6180186
0x6280286
0x6380386
0x170〜0x17F V シリーズ
データボックスレコード:

データボックスのデータ定義であり、 データマネージャによりサポートされるデータ形式である。

フォントデータレコード:

標準のフォントデータ形式。

辞書データレコード:

標準の辞書データ形式。

システムデータレコード:

システムで使用される標準のシステムデータ形式である。

アプリケーションレコード:

アプリケーションで定義されるデータ形式である。

3.3 TAD データ構成の概要

3.3.1 TAD データ構成

TAD データ構成は、 BTRON 仕様ファイル内の TAD データレコードの内容を規定するものである。

TAD データ構成は、ファイル内のデータ形式を規定するとともに、 トレー経由、またはドラッグによるアプリケーション間のデータ交換のためにも使用される。

TAD データ構成は、セグメント と呼ばれるデータ要素の一次元要素連鎖であり、 セグメントには、固定バイト長の固定長セグメントと、 可変バイト長の可変長セグメントがある。 各セグメントは、TRON 仕様多国語文字コード体系の下に定義されているため、 TAD データ構成は TRON 仕様文字コード列そのものであると言える。

固定長セグメント

TRON 仕様多国語文字コードとして定義されている、 広義の文字コードそのものであり、以下のものが含まれる。

・通常の文字コード: 1または2バイト・コード
・制御コード : (0x000x20) の1バイト・コード
・言語指定コード : (0xFE)で始まる多バイトコード
・特殊コード : (0xFF)(0x210x7E)の2バイトコード

なお、TAD データ構成では、基本的に下記の 制御コードのみを使用する。

無効コード 0x00
タブコード 0x09
改段落コード 0x0A
改コラムコード 0x0B
改ページコード 0x0C
改行コード 0x0D
セパレータ(スペース)0x20
可変長セグメント

TRON 仕様多国語文字コードとして定義されている TRON 仕様エスケープであり、 先頭バイトが (0xFF)、第 2 バイトが、 (0x800xFE) の値を持つ。 第 2 バイトはセグメントの種別を表すため、 セグメント ID と呼ばれる。 セグメント ID の直後にデータ本体のバイト長が入るが、 バイト長の形式として、 通常セグメントと ラージセグメント の 2 つの形式が存在し、ラージセグメントは、 バイト長さが 65,536 バイト以上の場合にのみ使用される。
バイト長は必ず偶数となるように必要に応じて "0" のバイトが最後に追加される。 データは上位バイトが先にくる ビッグエンディアンの形式となる。
下図に可変長セグメントの形式を示す。

可変長セグメントの構造
図 3 : 可変長セグメントの構造

標準可変長セグメントとして以下のものが定義されている。

セグメントタイプ セグメントID
(予約) (0x80〜0x9F)
文章付箋セグメントTS_Txxxx (0xA0〜0xAF)
図形描画セグメントTS_Fxxxx (0xB0〜0xBF)
(予約) (0xC0〜0xDF)
管理情報セグメントTS_INFO (0xE0)
文章開始セグメントTS_TEXT (0xE1)
文章終了セグメントTS_TEXTEND(0xE2)
図形開始セグメントTS_FIG (0xE3)
図形終了セグメントTS_FIGEND (0xE4)
画像セグメント TS_IMAGE (0xE5)
仮身セグメント TS_VOBJ (0xE6)
指定付箋セグメントTS_DFUSEN (0xE7)
機能付箋セグメントTS_FFUSEN (0xE8)
設定付箋セグメントTS_SFUSEN (0xE9)
(予約) (0xEA 〜 0xFE)

3.3.2 文章データと図形データ

TAD データは、大きく文章データと、図形データに分類される。

文章データは 1 次元データとも呼ばれ、 データ要素を一次元平面上で表現したデータである。 文章データの個々のデータ要素は 2 次元の大きさを持つ場合もあるが、 位置は 1 次元、即ち順序関係として表現される。

文章データには、 文章データを実際に 2 次元平面 ( 用紙 ) 上に表現するための 各種のレイアウト情報も含まれるが、 これはあくまでもレイアウタへの入力情報であり、 文章データ自体としては、 レイアウトされた結果としての 2 次元平面上での表現を直接表しているものでない。

文章データ
図 4 : 文章データ

図形データは 2 次元データとも呼ばれ、 データ要素を2次元平面上で直接的に表現したデータである。 図形データの個々のデータ要素は 2 次元座標平面上での大きさと位置を持つ。

図形データは左上を ( 0, 0 ) とし、 下 / 右方向に無限に広がる 2 次元座標平面 ( 用紙 ) 上の 1 つの長方形領域内のデータを表現しているもので、 各データ要素は、その位置、 大きさをその座標平面上での座標値として持っている。 座標値は 0 〜 32,767 の範囲の非負の整数値である。

図形データの座標系はあくまで 2 次元座標平面 ( 用紙 ) 上での表現上の座標系であり、 実際の物理的な大きさを直接表現しているものではない。

図形データ
図 5 : 図形データ

文章データと図形データは任意に ネスティング可能であり、 一番外側のデータの種別により、 文章データか図形データかが分類される。 ネスティングした文章データ、図形データは、 埋め込み文章データ埋め込み図形データ とも呼ばれる。

同種の ( 文章 / 図形 ) データがネスティングした場合は、 原則として未定義の属性は、 外側で定義された属性のうち、最も内側で定義された属性が適用される。 一番外側でも未定義な場合は、 データを解釈するアプリケーションに依存した適当な デフォールト値として解釈される。

別種の ( 図形 / 文章 ) データがネスティングしている場合は、 同種のデータのうち、最も外側のものが一番外側と判断される。 即ち、別種のデータがネスティングしている場合は、 そこで外側からの属性の継承が切断される。 ただし、 座標系、領域に関しては、同種、別種に無関係にすぐ外側のものが適用される。 同種、または別種のデータがネスティングしている場合、 あるデータ内で定義された属性は外側のデータには適用されない。

例 : 図形データ A
図形データ B-- 属性の上位スコープは A
図形データ C-- 属性の上位スコープは A
   図形データ D-- 属性の上位スコープは C, A
文章データ E-- 属性の上位スコープなし
   文章データ F-- 属性の上位スコープは E
   図形データ G-- 属性の上位スコープなし

( 埋め込み ) 文章 / 図形データには、以下の情報が定義される。

描画領域 ( draw )

( 埋め込み ) 図形データの時

図形データとして描画される長方形領域、 および描画のための座標系を示し、大きさ、値ともに意味を持つ。 描画領域外をはみ出る部分はクリッピングされ、 図形データには含まれない。

文章データの時

意味を持たない。

埋め込み文章データの時

図形データ中に埋め込まれた文章データの場合、 文章データをレイアウトする長方形領域を示し、 大きさのみが意味を持つ。
文章データ中に埋め込まれた文章データの場合は、意味を持たない。

座標系単位 ( unit )

描画領域の座標系の単位を、 1 cm 当たりの座標数または 1 inch 当たりの座標数により示す。 文章データの場合は、中に含まれる図形データ、画像データの表示領域の単位、 および書式のマージンの単位等を示すために使用される。
座標系単位の値が 0 の場合は、未定義であり、 すぐ外側と同一であると見なされる。

表示領域 ( view )

図形データ、文章データ、文章データ内に埋め込まれている文章データの時

意味を持たない。

その他の時

描画領域の表現を写像する外側の描画領域内での位置と大きさを示す。 従って、表示領域は外側の描画座標系 / 単位で規定される。
文章データ内に埋め込まれている場合は、大きさのみ意味を持つ。
表示領域の大きさ / 外側の描画座標単位 / 外側の倍率と、 描画領域の大きさ / 描画座標単位/倍率により、 描画領域の表現は拡大または縮小されて表示領域に写像される。

描画領域と表示領域
図 6 : 描画領域と表示領域

図形データ内に埋め込まれた文章データは、 描画領域として指定された領域内にレイアウトされた結果としての表現を意味し、 2 次元データと見なされる。 この場合、ページ、用紙の概念は存在しないため、 文章データ中のページ、用紙のレイアウトに関する指定は無視される。

図形データ内に埋め込まれた図形データは、座標系 / 倍率が異なる場合、 または、図形のグルーピングのために使用される。

文章データ内に埋め込まれた文章データは、座標系単位が異なる場合、 または、グルーピングを行なうために使用できるが、 埋め込まれた文章データも 1 次元データであるため、 その順番のみが意味を持つ。 2 次元のレイアウト済みの表現としての文章を埋め込む場合は、 埋め込み図形データ内の埋め込み文章データとする必要がある。

図形データでのネスティング
図 7 : 図形データでのネスティング
文章データでのネスティング
図 8 : 文章データでのネスティング

3.3.3 画像データ

画像データは、 ( 圧縮 ) ビットマップ形式により表現されたイメージ・データであり、 単位系、カラー表現等のデータを解釈するための情報を持っている。

画像データは、それ自体で 1 つの独立したデータとしての意味を持つが、 TAD データ構造としては、1 つのセグメントとして取り扱われ、図形データ、 または文章データの 1 つの要素として取り扱われる。

3.3.4 TAD データの構造定義

TAD データ構造は、以下に示すBNF表記により定義される。

【TAD データ】 ::=《管理情報セグメント》【TAD 本体】
【TAD 本体】 ::=【文章データ】|【図形データ】
【文章データ】 ::=《文章開始セグメント》【文章要素並び】《文章終了セグメント》
【文章要素並び】::=《空》|【文章要素並び】【文章要素】
【文章要素】 ::=【文字コード】|
《文章付箋セグメント》|
【図形データ】|
【文章データ】|
《画像セグメント》|
《仮身セグメント》|
《指定付箋セグメント》|
《機能付箋セグメント》
【文字コード】 ::= 《通常文字コード》|
《制御コード》|
《言語指定コード》|
《特殊文字コード》
【図形データ】::=《図形開始セグメント》【図形要素並び】《図形終了セグメント》
【図形要素並び】::=《空》|【図形要素並び】【図形要素】
【図形要素】::= 《図形描画セグメント》|
【文章データ】|
【図形データ】|
《画像セグメント》|
《仮身セグメント》|
《指定付箋セグメント》|
《機能付箋セグメント》

3.4 TAD データ構成の詳細

3.4.1 概要

この章では、TAD データの要素である各セグメントの構造の詳細を説明するが、 文章付箋セグメントに関しては第 4 節で、 図形描画セグメントに関しては第 5 節で説明する。

各セグメントのデータ構造は、以下の形式で説明している。

ID  :   -- セグメントIDを示す。
LEN :   -- データ本体のバイト長を示し、"〜"は可変長を意味する。
DATA:   -- データ本体の内容を示す。
各セグメントのバイト長 ( LEN ) は、 セグメント・タイプ毎に規定されているが、 将来的に拡張される可能性があるため、 仕様上のバイト長ではなく、 実際に格納されている LEN の値に従って処理する必要がある。

また、データ本体の内容は、以下に示すデータ表記を使用している。 8 ビット以上のビット長さを持つデータは、 上位バイトが先にくるビッグエンディアンの形式である。

B
8 ビットの符号付きデータ
UB
8 ビットの符号無しデータ
UB
文字コードを示す、8 ビットの符号無しデータ
H
16 ビットの符号付きデータ
UH
16 ビットの符号無しデータ
W
32 ビットの符号付きデータ
UW
32 ビットの符号無しデータ
PNT
点を表す以下の構造体データ。
typedef struct {                        
 H   h  -- 水平座標値   
 H   v  -- 垂直座標値   
} PNT;                                  
RECT
長方形領域を表す以下の構造体データ。
typedef struct {
DBYTE   left    -- 左の座標値
DBYTE   top     -- 上の座標値
DBYTE   right   -- 右の座標値
DBYTE   bottom  -- 下の座標値
} RECT;
COLOR
カラーを表現する以下の 32 ビットの符号無しデータ
カラー表現
図 9 : カラー表現
UNITS
座標系の単位を表現する以下の 16 ビットの符号付きデータ。
>0: 1 cm         当たりの座標数
<0: 1 inch 当たりの座標数の負数
=0: 未定義 (外側の座標系で定義される単位と同じ)

 例 :    400    -- 1 / 400 cm    単位
        -240    -- 1 / 240 inch  単位
CHSIZE
文字サイズを表現する以下の 16 ビットの符号無しデータ。
UUSS SSSS SSSS SSSS

        U: 単位指定
                0: 外側の座標系で定義される単位
                1: 1/20 級 ( 1 / 80 mm ) 単位。
                2: 1/20 ポイント ( 1 / 1440 inch ) 単位。
                3: 予約
        S: U で指定した単位での文字サイズ。0 の場合は未定義
         であることを意味する。
SCALE
行間隔等を表現する以下の 16 ビットの符号無しデータ。
1NNN NNNN NNNN NNNN   -- 絶対指定
0AAA AAAA BBBB BBBB   -- 比率指定

絶対指定 : 座標系単位での値 ( N )
比率指定 : 基準値 × ( A / B ) の値
          ( B = 0 の時は比率 1 と見なす )
RATIO
比率を表現する以下の 16 ビットの符号無しデータ。
AAAA AAAA BBBB BBBB

A / B の値が比率となる ( B = 0 の時は比率 1 と見なす )

3.4.2 管理情報セグメント

□ 説明:

TAD データの解釈のために必要な バージョン等の管理情報を保持するためのセグメントで、 実身等の 1 つの独立した TAD データの場合は、 TAD 本体 ( 文章 / 図形データ ) 前に必ずなくてはならない。 このセグメントは参照情報として意味を持つが、 バージョンが異なる場合の処理はインプリメントに依存する。 原則として、バージョンアップがあった場合、仕様は上位互換となる。

□ データ形式:

ID  :   TS_INFO                 -- 管理情報セグメント
LEN :   〜
DATA:   UH  subid               -- 項目ID
        UH  sublen              -- 項目のバイト数
        UH  data[]              -- 項目データ本体(sublen バイト)
         :        :
     $lt;上記の繰り返し>

□ データ説明:

subid :
管理情報の項目 ID を示す。
sublen :
項目データのバイト数を示す。バイト数は必ず偶数となる。
data[ ] :
項目データの本体を示す、sublen バイトのデータ。 データの内容は項目 ID に依存する。
subid:  0               -- TAD 規格のバージョン番号
sublen: 2
data:   UH  ver         -- 以下の形式の 3 桁 BCD コードによるバージョン番号

        0000 AAAA BBBB CCCC  : バージョン A.BC

        例:バージョン1.2のとき  AAAA = 0001
                                BBBB = 0010
                                CCCC = 0000
subid:  1〜             -- 予約

3.4.3 文章開始 / 終了セグメント

□ 説明:

文章データの開始および終了を表すセグメントで、 文章開始セグメントと文章終了セグメントに囲まれた部分が 1 つの文章データとなる。

□ データ形式:

ID  :   TS_TEXT                 -- 文章開始セグメント
LEN :   24
DATA:   RECT    view            -- 表示領域
        RECT    draw            -- 描画領域
        UNITS   h_unit          -- 水平ユニット
        UNITS   v_unit          -- 垂直ユニット
        UH  lang                -- デフォールト言語
        UH  bgpat               -- 背景パターン ID
ID  :   TS_TEXTEND              -- 文章終了セグメント
LEN :   0
DATA:   なし

□ データ説明:

view:
外側の座標系で定義される文章データの表示領域を示し、 図形データ中に埋め込まれた埋め込み文章データの場合のみ、 意味を持つ。
draw:
描画領域を示し、 図形データ中に埋め込まれた埋め込み文章データの場合のみ、 その大きさのみが意味を持ち、 レイアウトすべき領域の大きさを示す。
h_unit:
描画領域の水平の座標単位を示す UNITS タイプのデータ。
v_unit:
描画領域の垂直の座標単位を示す UNITS タイプのデータ。
lang:
文章データ内で使用しているデフォールト言語を示す。
デフォルト言語とは、 データ中に言語指定コードによる言語切り換えが現れるまでの言語を意味する。
日本語:0x0021
bgpat:
文章データの背景パターン ID を示し、 図形データ中に埋め込まれた埋め込み文章データの場合のみ意味を持つ。 0 は背景が透明であることを示す。
パターンIDに関しては、「パターン定義セグメント」を参照の事。

3.4.4 図形開始/終了セグメント

□ 説明:

図形データの開始および終了を表すセグメントで、 図形開始セグメントと図形終了セグメントに囲まれた部分が 1 つの図形データとなる。

□ データ形式:

ID  :   TS_FIG                  -- 図形開始セグメント
LEN :   24
DATA:   RECT    view            -- 表示領域
        RECT    draw            -- 描画領域
        UNITS   h_unit          -- 水平ユニット
        UNITS   v_unit          -- 垂直ユニット
        W   ratio               -- 倍率
ID  :   TS_FIGEND               -- 図形終了セグメント
LEN :   0
DATA:   なし

□ データ説明:

view:
外側の座標系で定義される図形データの表示領域を示し、 埋め込み図形データの場合のみ、 意味をもつ。 文章データ中に埋め込まれた図形データの場合、 view が空の場合は、文字サイズ比例という特別な意味を持つ。 文字サイズ比例とは、 描画領域の高さを文字サイズと等しいように 相似変形したもの表示領域とするもので、 埋め込み図形を文字として取り扱いたい場合に使用する ( 従来の外字機能 ) 。
draw:
描画領域を示し、図形データの領域の大きさと座標系を定義する。
h_unit:
描画領域の水平の座標単位を示す UNITS タイプのデータ。
v_unit:
描画領域の垂直の座標単位を示す UNITS タイプのデータ。

3.4.5 画像セグメント

□ 説明:

画像セグメントは、画像データを表すセグメントであり、 TAD 文章データ、図形データの中に埋め込まれる。 画像セグメントは、それ自体で独立した座標単位およびカラー情報を持ち、 BTRON仕様ディスプレイ・プリミティブ で規定されている圧縮ビットマップ形式で表現される。

□ データ形式:

画像セグメントのデータ形式
図 10 : 画像セグメントのデータ形式

□ データ説明:

view:
外側の座標系で定義される画像セグメントの表示領域を示す。 文章データ中に埋め込まれた画像データの場合、 view が空の場合は、文字サイズ比例という特別な意味を持つ。
draw:
描画領域を示し、画像セグメントの領域の大きさと座標系を定義する。 画像データの圧縮ビットマップの bounds で示される領域内の draw で指定される長方形領域が描画対象となる。 空の場合は、圧縮ビットマップの bounds と同一と見なされる。
h_unit:
描画領域の水平の座標単位を示す UNITS タイプのデータ。
v_unit:
描画領域の垂直の座標単位を示す UNITS タイプのデータ。 座標系単位は、画像データの実際のサイズを示すためのものであるが、 実際の描画では、draw 領域を view 領域にマッピングして描画されるため使用されない。
slope:
画像の傾きを示す。 画像上の水平軸の座標系の水平軸に対する反時計周りの角度 ( ≧ 0 ) で示される ( 360 度の剰余が有効 ) 。 slope < 0 は、未定義を意味する。
color:
カラー方式を示す。
xxxx xxxx Ixxx PRRR
R:
0 -- 白黒
1 -- RGB カラー
2 -- CMY カラー
3〜-- その他 ( 予約 )
P:
0 -- 直接方式 ( カラーマップ無し )
1 -- カラーマップ方式 ( パレット方式 )
I:
0 -- 通常表現 ( ピクセル値 0 が白、最大値が黒に対応 )
1 -- 反転表現 ( ピクセル値 0 が黒、最大値が白に対応 )
x:
-- 予約 ( 0 )
cinfo:
カラー情報を示す。
<カラーマップ方式の場合>

カラーマップ ( ピクセル値に対応するカラー表現を示した配列 ) のバイト数、およびオフセットを示す。 カラーマップのバイト数 ( cinfo[0] ) = 0 の場合は、カラーマップ は未定義であることを意味する。

カラーマップ
図 11 : カラーマップ
<直接方式の場合>

カラー表現データ ( ピクセル値 ) が どのようにカラー表現に対応するかを示す。 cinfo[0] = 0 の場合は、 カラー表現データは未定義であることを意味する。

R = 0 ( 白黒 ) の時:
cinfo[0] -- 白黒の有効階調ビット数とその位置
cinfo[1] -- 未使用
cinfo[2] -- 未使用
cinfo[3] -- 未使用
R = 1 ( RGB ) の時:
cinfo[0] -- 赤の有効階調ビット数とその位置
cinfo[1] -- 緑の有効階調ビット数とその位置
cinfo[2] -- 青の有効階調ビット数とその位置
cinfo[3] -- 未使用
R = 2 ( CMY ) の時:
cinfo[0] -- シアンの有効階調ビット数とその位置
cinfo[1] -- マゼンタの有効階調ビット数とその位置
cinfo[2] -- 黄の有効階調ビット数とその位置
cinfo[3] -- 黒の有効階調ビット数とその位置

各データの下位バイトは階調ビット数を示し、 上位バイトはピクセル値上の LSB を 0 としたビット位置を示す。 例として、ピクセル値の表現が、 ....BBBBGGGGGGRRRRRR の場合は、

cinfo[0] → 0x0006
cinfo[1] → 0x0606
cinfo[2] → 0x0c04
となる。

extlen:
拡張情報のバイト数を示す。 = 0 の場合は拡張情報が存在しないことを意味する。
extend:
拡張情報へのオフセットを示し、extlen ≠ 0 の場合のみ有効である。 extlen = 0 の場合の値は無視されるがフィールドとしては必要となる。 拡張情報は、 以下のいずれかの形式であり、ext_id により、 その意味が規定される。 ext_id の MSB は形式の区別に使用され、 下位の 15 ビットの値が ID としての意味を持つ。
直接形式:
UH    ext_id  -- 拡張情報のタイプ ( ext_id の MSB = 0 )
UH    len     -- 拡張情報のバイト数
UB    data[]  -- 拡張情報本体 ( len バイト )
間接形式:
UH    ext_id  -- 拡張情報のタイプ( ext_id の MSB = 1 )
UH    len     -- 拡張情報のバイト数
UW    offset  -- 拡張情報本体へのオフセット
現在、規定されている拡張情報は、以下のものである。
ext_id = 0:
画像の背景色指定
len : 4
data: COLOR bgcol -- 背景色の指定
1 〜 16383:
( 予約 )
16384 〜:
未定義 ( アプリケーション依存 )
mask:
マスク用の圧縮ビットマップへのオフセットを示す。 マスクが存在しない場合は 0 となる。 マスクは、1 プレーンの圧縮ビットマップデータであり、 マスクの "1" に対応するピクセルは不透明であり、 " 0" に対応するピクセルは透明であることを意味する。 マスクの圧縮ビットマップの構造はイメージデータのビットマップの構造と圧縮方式も含めて同一である。
compac:
これ以降は、 ディスプレイ・プリミティブで規定されている 圧縮ビットマップ形式のデータであり、 各プレーンのデータへのアドレスが オフセットになっている点が異なっている。 (圧縮ビットマップ形式のデータに関しては BTRON 仕様ディスプレイプリミティブの仕様を参照のこと) なお、圧縮ビットマップ形式には非圧縮 ( compac = 0 ) の場合も含まれる。
画像セグメント
図 12 : 画像セグメント

3.4.6 仮身セグメント

□ 説明:

仮身セグメントは、仮身を示すセグメントであり、TAD 文章データ、 図形データの中に埋め込まれて、他の実身の参照を意味する。 仮身セグメントには、仮身を表示するための各種の情報、 およびデフォールト・アプリケーション実行のための固有データ情報が入る。 仮身自体の内容は、リンク ( 仮身 ) レコードとして別に存在し、 実身中の出現順により 1 対 1 に仮身セグメントとの対応が取られる。 リンク・レコードには BTRON 仕様ファイル管理機能で使用されるファイルを示す情報の他に、以下の情報が含まれている。

仮身セグメントおよびリンクレコードは、 BTRON仕様実身/仮身マネージャ機能によりサポートされるため、通常、アプリケーションは直接アクセスしない。

□ データ形式:

ID  :   TS_VOBJ                 -- 仮身セグメント
LEN :   〜
DATA:   RECT    view            -- 表示領域
        H       height          -- 開いた場合の仮身高さ
        CHSIZE  chsz            -- 文字サイズ
        COLOR   frcol           -- 枠の色
        COLOR   chcol           -- 文字の色
        COLOR   tbcol           -- タイトル背景色
        COLOR   bgcol           -- 開いた場合の背景色
        UH      dlen            -- 固有データのバイト長
        UB      data[dlen]      -- 固有データ( dlen バイト)

□ データ説明:

view:
外側の座標系で定義される仮身セグメントの表示領域を示す。
height:
開いた場合の仮身高さを view と同じ座標系で示す。 -1 は開けないことを意味し、 0 はデフォールトの高さで開くことを意味する。
chsz:
仮身タイトルの文字サイズを示す、CHSIZE タイプのデータ。
frcol:
仮身表示枠の色を示す。
chcol:
仮身タイトルの文字の色を示す。
tbcol:
仮身タイトルの背景色を示す。
bgcol:
開いた仮身の表示領域の背景色を示す。
data:
デフォールト・アプリケーションの機能付箋の固有データであり、 dlen はそのバイト長を示す。
固有データの内容は対応するデフォールトアプリケーション により定義される。

3.4.7 機能付箋セグメント

□ 説明:

機能付箋セグメントは、 アプリケーションを起動するための各種のパラメータを保持するもので、 他に付箋自身の表示用の情報も保持している。 通常、機能付箋セグメントは、 独立した機能付箋レコードまたは実行機能付箋レコードとして存在する。 機能付箋セグメントが独立した機能付箋レコード または実行機能付箋レコードとして存在する場合には、 セグメント先頭のセグメント ID、0xFF、 およびデータ長のフィールドは省略されレコードの内容は DATA 部のみとなる。 セグメント ID とデータ長は、レコードタイプとレコード長で示される。

□ データ形式:

ID  :   TS_FFUSEN               -- 機能付箋セグメント
LEN :   〜
DATA:   RECT    view            -- 表示領域
        CHSIZE  chsz            -- 文字サイズ
        COLOR   frcol           -- 枠の色
        COLOR   chcol           -- 文字の色
        COLOR   tbcol           -- タイトル背景色
        UH      pict            -- ピクトグラム / タイプ
        UH      appl[3]         -- アプリケーション ID
        UB      name[32]        -- 付箋名
        UB      type[32]        -- データタイプ名
        UH      dlen            -- 固有データのバイト長
        UB      data[dlen]      -- 固有データ ( dlen バイト )

□ データ説明:

view:
外側の座標系で定義される機能付箋セグメントの表示領域を示す。
chsz:
機能付箋タイトルの文字サイズを示す、CHSIZE タイプのデータ。
frcol:
機能付箋表示枠の色を示す。
chcol:
機能付箋タイトルの文字の色を示す。
tbcol:
機能付箋タイトルの背景色を示す。
pict:
機能付箋のピクトグラムを示す。0 は付箋のデフォールトを意味する。
appl:
対応するアプリケーション ID を示す。
name:
付箋名を示す。
type:
アプリケーション ID に対応したデータタイプ名を示す。
data:
機能付箋の固有データであり、dlen はそのバイト長を示す。 固有データの内容は対応するアプリケーションにより定義される。

3.4.8 指定付箋セグメント

□ 説明:

指定付箋セグメントは、TAD データの中に埋め込まれる、 アプリケーション固有のデータとして解釈されるデータである。

1 つ以上の指定付箋セグメントを 独立した指定付箋レコードとして存在させることができる。 指定付箋レコードに1つの指定付箋セグメントしか含まれない場合でも、 セグメント先頭のセグメント ID、0xFF、 およびデータ長のフィールドは省略することはできない。

固有データのバイト長は、仮身セグメントや、 機能付箋セグメントと異なり、UWとなる。

□ データ形式:

ID  :   TS_DFUSEN               -- 指定付箋セグメント
LEN :   〜
DATA:   RECT    view            -- 表示領域
        CHSIZE  chsz            -- 文字サイズ
        COLOR   frcol           -- 枠の色
        COLOR   chcol           -- 文字の色
        COLOR   tbcol           -- タイトル背景色
        UH      pict            -- ピクトグラム / タイプ
        UH      appl[3]         -- アプリケーション ID
        UB      name[32]        -- 付箋名
        UW      dlen            -- 固有データのバイト長
        UB      dat[dlen]       -- 固有データ ( dlen バイト )

□ データ説明:

view:
外側の座標系で定義される指定付箋セグメントの表示領域を示す。
chsz:
指定付箋タイトルの文字サイズを示す、CHSIZE タイプのデータ。
frcol:
指定付箋表示枠の色を示す。
chcol:
指定付箋タイトルの文字の色を示す。
tbcol:
指定付箋タイトルの背景色を示す。
pict:
指定付箋のピクトグラムを示す。0 は付箋のデフォールトを意味する。
appl:
対応するアプリケーション IDを示す。
name:
付箋名を示す。
data:
指定付箋の固有データであり、 dlen はそのバイト長 固有データの内容は対応するアプリケーションにより定義される。

この章の目次にもどる
前頁:第2章 TRON コード体系にもどる
次頁:3.5 文章付箋セグメントにすすむ