soccerwindow2

XPMファイルのフォーマット

team_graphicコマンドをサポートするための,XPMファイルフォーマットのメモ

XPMのフォーマット

static char *<variable_name>[] = [
   <Value>,
   <Colors>,
   <Pixels>,
   <Extensions>
};

<Values> セクション

4個または6個の10進数整数を含む文字列

"<width> <height> <ncolors> <cpp> [<x_hotspot> <y_hotspot>] [XPMEXT]"

幅,高さ,色数,ピクセルあたりの文字数, hotspotの座標,拡張が存在する場合はXPMEXTタグ.

cpp> は <chars_per_pixel> の略.

<Colors> セクション

色指定のための文字列. 指定した色数に応じて文字列長は長くなる. 一つの色は以下のフォーマットで表される.

 <chars> {<key> <color>}+

一文字列が一つの色を表すので,<Values>セクションで指定した色数分と同じ 数の文字列を与えなければならない.

  • <chars>
    "<chars_per_pixel>" の長さの文字列(引用符では囲まれない)で、ピ クセルを表す(256色なら<cpp>=1なので,一文字でOK).
  • <color>
    色の名前,または,#で始まる16進RGB文字列
  • <key>
    この色が使用されるコンテキストを示すキーワード.以下のいずれか:
     m: モノクロ
     s: シンボリックネーム
     g4: 4レベルグレースケール
     g: 4レベルより上のグレースケール
     c: 表示色

<Pixels> セクション

<width>*<chars_per_pixe.>の長さの文字列を<height>個

<Extensions> セクション

省略

実例

ファイルオープンのアイコン.

static char *open_xpm[] = {
"16 15 5 1",   // 幅16, 高さ15,5色使用,1ピクセルは1文字で表現
"  c None",      // スペースは無色
". c Black",      // '.' は黒
"X c Yellow",  // 'X' は黄色
"o c Gray100", // 'o' はGray100
"O c #bfbf00", // 'O' は#bfbf00
/* pixels */      // ここからピクセルデータ 16文字x15
"                ",
"          ...   ",
"         .   . .",
"              ..",
"  ...        ...",
" .XoX.......    ",
" .oXoXoXoXo.    ",
" .XoXoXoXoX.    ",
" .oXoX..........",
" .XoX.OOOOOOOOO.",
" .oo.OOOOOOOOO. ",
" .X.OOOOOOOOO.  ",
" ..OOOOOOOOO.   ",
" ...........    ",
"                "

} ;


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-03-14 (月) 14:51:37 (1281d)
SourceForge.JP
Creative Commons License
RoboCup tools by Hidehisa Akiyama is licensed under a Creative Commons 表示-非営利 2.1 日本 License.