Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ XLookupColor(3X11) — NEWS-os 4.2.1R

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

XAllocColor(3X11)

XCreateColormap(3X11)

XStoreColors(3X11)

XQueryColor(3X11)  —  NEWS-OS Programmer’s Manual

名称

XQueryColor, XQueryColors, XLookupColor, XParseColor − カラー値を問合わせる

形式

XQueryColor(display, colormap, def_in_out)
      Display ∗display;
      Colormap colormap;
      XColor ∗def_in_out; XQueryColors(display, colormap, defs_in_out, ncolors)
      Display ∗display;
      Colormap colormap;
      XColor defs_in_out[];
      int ncolors; Status XLookupColor(display, colormap, color_name, exact_def_return, screen_def_return)
      Display ∗display;
      Colormap colormap;
      char ∗color_name;
      XColor ∗exact_def_return, ∗screen_def_return; Status XParseColor(display, colormap, spec, exact_def_return)
        Display ∗display;
        Colormap colormap;
        char ∗spec;
        XColor ∗exact_def_return;

引数

colormapcolormap を指定します。

color_name返してほしいカラー定義構造体をもつカラー名の文字列 (例えば、赤) を指定します。

def_in_out構造体中に指定されたピクセルの RGB 値を指定し、返します。

defs_in_out構造体中に指定されたピクセルのカラー定義構造体の配列を指定し、返します。

displayX サーバへのコネクションを指定します。

exact_def_return
正確な RGB 値を返します。

ncolorsカラー定義配列中の XColor 構造体の数を指定します。

screen_def_return
ハードウェアが提供する一番近い RGB 値を返します。

specカラー名を文字列で指定します。 大文字、小文字の区別はしません。

exact_def_return
後に使用される正確なカラー値を返し、 DoRed、 DoGreen、 および DoBlue フラグを設定します。

解説

XQueryColor 関数は、 XColor 構造体中のピクセルの現在の RGB 値を返し、 DoRed、 DoGreen および DoBlue フラグを設定します。 XQueryColors 関数は、各 XColor 構造体中の各ピクセルの RGB 値を返し、 DoRed、 DoGreen および DoBlue フラグを各構造体に:w設定します。 XQueryColor および XQueryColors は、 BadColor および BadValue エラーを生じることがあります。 XLookupColor 関数は、指定されたカラーマップと対応するスクリーンに関するカラーの 文字列名を調べます。 XLookupColor は、指定されたカラーマップのビジュアルタイプに関するスクリーンが 提供する正確なカラー値および一番近い値を返します。 カラー名が ホストポータブル文字コード (Host Portable Character Encoding) にない場合は、結果は、インプリメンテーションにより異なります。 大文字小文字は両方使用できます。 XLookupColor は、名前が解決した場合、ゼロ以外の値を返します。 それ以外の場合はゼロを返します。 XParseColor 関数は、指定したカラーマップと結び付いたスクリーンの カラー名 (文字列) を捜します。 正確なカラー値を返します。 カラー名が ホストポータブル文字コード (Host Portable Character Encoding) にない場合は、結果は、インプリメンテーションにより異なります。 大文字小文字は両方使用できます。 XParseColor は、名前が解決した場合、ゼロ以外の値を返します。 それ以外の場合はゼロを返します。 XLookupColor および XParseColor は、 BadColor エラーが生じることがあります。

カラー名

RGB デバイスの指定は、最初に “rgb:” と付け、 以下の形式で指定します。

rgb:<red>/<green>/<blue>
     <red>, <green>, <blue> := h | hh | hhh | hhhh
    h := 1 文字の 16 進数字 (大文字、小文字の区別なし)

h は 4 ビット、 hh は 8 ビット、 hhh は 12 ビット、 hhhh は 16 ビットで それぞれ値が計算されることを意味するので、ご注意ください、 下位互換のために、 シャープ文字 (#) から始まり、数字が続く、 昔の RGB デバイスの形式 (以下に示す形式の内のいずれか) も サポートされていますが、 この形式を使用することはお勧めできません。

#RGB(各 4 ビット)
#RRGGBB(各 8 ビット)
#RRRGGGBBB(各 12 ビット)
#RRRRGGGGBBBB(各 16 ビット)

R、G、B は、16 進数字 1 文字 を表します。 各ビットに 16 ビットより少ないものを指定した場合は、 (値がスケールされる “rgb:” の形式とは違い、) それらは、各値の最高位ビットを表します。 例えば、#3a7 は $3000a0007000 と同じです。 RGB デバイスの指定は、最初に “rgbi:” と付け、 以下の形式で指定します。

rgbi:<red>/<green>/<blue>

red、green、blue は、0.0 から 1.0 の間の 浮動小数点の値 (0.0 および 1.0 を含む) です。 これらの値の入力形式は、 符合 (オプショナル)、 数字 (小数点を含んだものも可)、 指数 (E または e の後に整数 (符合付きも可) が続いたもの)(オプショナル) です。 デバイスから独立した文字列を指定する、標準形式は、以下の通りです。

CIEXYZ:<X>/<Y>/<Z>
CIEuvY:<u>/<v>/<Y>
CIExyY:<x>/<y>/<Y>
CIELab:<L>/<a>/<b>
CIELuv:<L>/<u>/<v>
TekHVC:<H>/<V>/<C>

値 (C、H、V、X、Z、a、b、u、v、y、x) は、浮動小数点です。 これらの値の形式は、 数字 (小数点を含んだものも可)、 指数 (E または e の後に、’+’ または ’-’ サイン (オプショナル)、数字が 続いたもの)(オプショナル) です。

診断

BadColor Colormap 引数の値が定義された Colormap を指さない。

BadValue ある数値が許容範囲を超えた。 引数の値の範囲が明示されない限り、引数の型によって決まる最大の範囲まで 指定可能です。 選択形式の引数も、このエラーを生じることがあります。

関連事項

XAllocColor(3X11), XCreateColormap(3X11), XStoreColors(3X11)
 br Xlib − C Language X Interface

NEWS-OSRelease 4.2.1R

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026