Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

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

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

XLoadFont(3X11)

XTextWidth(3X11)

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

名称

XTextExtents, XTextExtents16, XQueryTextExtents, XQueryTextExtents16 - テキストエクステントを計算または問合わせる

形式

XTextExtents(font_struct, string, nchars, direction_return, font_ascent_return,
              font_descent_return, overall_return)
      XFontStruct ∗font_struct;
      char ∗string;
      int nchars;
      int ∗direction_return;
      int ∗font_ascent_return, ∗font_descent_return;
      XCharStruct ∗overall_return;
 
XTextExtents16(font_struct, string, nchars, direction_return, font_ascent_return,
                font_descent_return, overall_return)
      XFontStruct ∗font_struct;
      XChar2b ∗string;
      int nchars;
      int ∗direction_return;
      int ∗font_ascent_return, ∗font_descent_return;
      XCharStruct ∗overall_return;
 
XQueryTextExtents(display, font_ID, string, nchars, direction_return, font_ascent_return,
                    font_descent_return, overall_return)
      Display ∗display;
      XID font_ID;
      char ∗string;
      int nchars;
      int ∗direction_return;
      int ∗font_ascent_return, ∗font_descent_return;
      XCharStruct ∗overall_return; XQueryTextExtents16(display, font_ID, string, nchars, direction_return, font_ascent_return,
                        font_descent_return, overall_return)
      Display ∗display;
      XID font_ID;
      XChar2b ∗string;
      int nchars;
      int ∗direction_return;
      int ∗font_ascent_return, ∗font_descent_return;
      XCharStruct ∗overall_return;

引数

direction_return
ディレクションヒントの値 (FontLeftToRight または FontRightToLeft) を返します。

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

font_IDフォント ID またはフォントを含んだ GContext ID のいずれかを指定します。

font_ascent_return
フォントのアセントを返します。

font_descent_return
フォントのディセントを返します。

font_structXFontStruct 構造体を指定します。

nchars文字列中の文字数を指定します。

string文字列を指定します。

overall_return
指定された XCharStruct 構造体内のすべてのサイズを返します。

解説

XTextExtents および XTextExtents16 関数は、 局所的にサイズ計算を行い、それにより、 XQueryTextExtents および XQueryTextExtents16 のラウンドトリップオーバーヘッドを避けます。 両方の関数は XCharStruct 構造体を返します。 XCharStruct 構造体のメンバは、次のように、値に設定されます。 アセント (ascent) メンバは、文字列中のすべての文字のアセントの最大値に 設定されます。 ディセントメンバは、文字列中のすべての文字のディセントの最大値に設定さ れます。 幅 (width) メンバは、文字列中のすべての文字の文字幅の合計値に設定され ます。 文字列中の各々の文字について、 W を文字列中で、それに先行するすべての文字の文字幅の合計値とします。 L を、文字 +W の左側方位 (bearing) とします。 そして R を、文字 +W の右側方位とします。 左側方位 (lbearing) メンバは、文字列中のすべての文字の最小 L に設定され ます。 右側方位 (rbearing) メンバは、文字列中のすべての文字の最大 R に設定され ます。 2 バイトの行列索引付けではなく、線形の索引付けを使用して定義されたフォントの場合、各々の XChar2b 構造体は、最上位バイトとして byte1 をもつ 16 ビットの数と解釈されます。 フォントが定義されたデフォルト文字をもっていない場合は、 文字列中の未定義の文字は、すべてゼロとみなされます。 XQueryTextExtents および XQueryTextExtents16 関数は、指定されたフォントまたは指定された GC 内に含まれるフォント中の 指定された 8 ビットおよび 16 ビットの文字列のバウンディングボックスを 返します。 XQueryTextExtents および XQueryTextExtents16 関数は、X サーバに問合わせ、その結果、 XTextExtents および XTextExtents16 によって避けられるラウンドトリップオーバヘッドを受けます。 XQueryTextExtents および XQueryTextExtents16 関数は、 XCharStruct 構造体を返します。その構造体のメンバは、次のように、値に設定されます。 アセント (ascent) メンバは、文字列中のすべての文字のアセントの最大値に 設定されます。 ディセント (descent) メンバは、ディセントの最大値に設定されます。 幅 (width) メンバは、文字列中のすべての文字の文字幅の合計値に設定されま す。 文字列中の各々の文字について、 W を、文字列中で、それに先行するすべての文字の文字幅の合計値とします。 L を、文字 +W の左側方位の距離とします。 そして、R を、文字 +W の右側方位の距離とします。 左側方位 (lbearing) のメンバは、文字列中のすべての文字の最小 L に設定さ れます。 右側方位 (rbearing) メンバは、その最大 R に設定されます。 2 バイトの行列索引付けではなく、線形索引付けを使用して定義されたフォン トの場合、各々の XChar2b 構造体は、最も上位バイトとして byte1 をもつ 16 ビットの数と解釈されます。 フォントが定義されたデフォルト文字をもっていない場合は、 文字列中の未定義の文字は、すべてゼロとみなされます。 すべてゼロの文字は、無視されます。 フォントが定義されたデフォルト文字をもっていない場合は、 文字列中の未定義の文字は、無視されます。 XQueryTextExtents および XQueryTextExtents16 は、 BadFont および BadGC エラーを生じることがあります。

診断

BadFont Font または GContext 引数の値が定義された Font を指さない。

BadGC GContext 引数の値が定義された GContext を指さない。

関連事項

XLoadFont(3X11), XTextWidth(3X11)
Xlib − C Language X Interface

NEWS-OSRelease 4.2.1R

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