1 <?xml version=
"1.0" encoding=
"UTF-8"?>
2 <!DOCTYPE book PUBLIC
"-//OASIS//DTD DocBook MathML Module V1.1b1//EN"
3 "http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd">
4 <refentry id=
"glXUseXFont">
9 <holder>Silicon Graphics, Inc.
</holder>
12 <refentrytitle>glXUseXFont
</refentrytitle>
13 <manvolnum>3G
</manvolnum>
16 <refname>glXUseXFont
</refname>
17 <refpurpose>create bitmap display lists from an X font
</refpurpose>
19 <refsynopsisdiv><title>C Specification
</title>
22 <funcdef>void
<function>glXUseXFont
</function></funcdef>
23 <paramdef>Font
<parameter>font
</parameter></paramdef>
24 <paramdef>int
<parameter>first
</parameter></paramdef>
25 <paramdef>int
<parameter>count
</parameter></paramdef>
26 <paramdef>int
<parameter>listBase
</parameter></paramdef>
30 <!-- eqn: ignoring delim $$ -->
31 <refsect1 id=
"parameters"><title>Parameters
</title>
34 <term><parameter>font
</parameter></term>
37 Specifies the font from which character glyphs are to be taken.
42 <term><parameter>first
</parameter></term>
45 Specifies the index of the first glyph to be taken.
50 <term><parameter>count
</parameter></term>
53 Specifies the number of glyphs to be taken.
58 <term><parameter>listBase
</parameter></term>
61 Specifies the index of the first display list to be generated.
67 <refsect1 id=
"description"><title>Description
</title>
69 <function>glXUseXFont
</function> generates
<parameter>count
</parameter> display lists,
70 named
<parameter>listBase
</parameter> through
71 <inlineequation><mml:math>
72 <!-- eqn: listBase + count - 1:-->
74 <mml:mi mathvariant=
"italic">listBase
</mml:mi>
76 <mml:mi mathvariant=
"italic">count
</mml:mi>
80 </mml:math></inlineequation>,
81 each containing a single
<citerefentry><refentrytitle>glBitmap
</refentrytitle></citerefentry> command.
82 The parameters of the
<citerefentry><refentrytitle>glBitmap
</refentrytitle></citerefentry> command of display list
83 <inlineequation><mml:math>
84 <!-- eqn: listBase + i:-->
86 <mml:mi mathvariant=
"italic">listBase
</mml:mi>
88 <mml:mi mathvariant=
"italic">i
</mml:mi>
90 </mml:math></inlineequation>
91 are derived from glyph
92 <inlineequation><mml:math>
93 <!-- eqn: first + i:-->
95 <mml:mi mathvariant=
"italic">first
</mml:mi>
97 <mml:mi mathvariant=
"italic">i
</mml:mi>
99 </mml:math></inlineequation>.
101 <inlineequation><mml:math><mml:mi mathvariant=
"italic">xorig
</mml:mi></mml:math></inlineequation>,
102 <inlineequation><mml:math><mml:mi mathvariant=
"italic">yorig
</mml:mi></mml:math></inlineequation>,
103 <inlineequation><mml:math><mml:mi mathvariant=
"italic">width
</mml:mi></mml:math></inlineequation>,
105 <inlineequation><mml:math><mml:mi mathvariant=
"italic">height
</mml:mi></mml:math></inlineequation>
106 are computed from font metrics as
107 <inlineequation><mml:math>
108 <!-- eqn: descent-1:-->
110 <mml:mi mathvariant=
"italic">descent
</mml:mi>
114 </mml:math></inlineequation>,
115 <inlineequation><mml:math>
116 <!-- eqn: -lbearing:-->
119 <mml:mi mathvariant=
"italic">lbearing
</mml:mi>
121 </mml:math></inlineequation>,
122 <inlineequation><mml:math>
123 <!-- eqn: rbearing - lbearing:-->
125 <mml:mi mathvariant=
"italic">rbearing
</mml:mi>
127 <mml:mi mathvariant=
"italic">lbearing
</mml:mi>
129 </mml:math></inlineequation>,
131 <inlineequation><mml:math>
132 <!-- eqn: ascent+descent:-->
134 <mml:mi mathvariant=
"italic">ascent
</mml:mi>
136 <mml:mi mathvariant=
"italic">descent
</mml:mi>
138 </mml:math></inlineequation>,
140 <inlineequation><mml:math><mml:mi mathvariant=
"italic">xmove
</mml:mi></mml:math></inlineequation>
141 is taken from the glyph's
142 <inlineequation><mml:math><mml:mi mathvariant=
"italic">width
</mml:mi></mml:math></inlineequation>
145 <inlineequation><mml:math><mml:mi mathvariant=
"italic">ymove
</mml:mi></mml:math></inlineequation>
148 the glyph's image is converted to the appropriate format for
<citerefentry><refentrytitle>glBitmap
</refentrytitle></citerefentry>.
151 Using
<function>glXUseXFont
</function> may be more efficient than accessing the X font and generating
152 the display lists explicitly,
153 both because the display lists are created on the server without requiring
154 a round trip of the glyph data,
155 and because the server may choose to delay the creation of each
156 bitmap until it is accessed.
159 Empty display lists are created for all glyphs that are requested and
160 are not defined in
<parameter>font
</parameter>.
161 <function>glXUseXFont
</function> is ignored if there is no current GLX context.
164 <refsect1 id=
"errors"><title>Errors
</title>
166 <constant>BadFont
</constant> is generated if
<parameter>font
</parameter> is not a valid font.
169 <constant>GLXBadContextState
</constant> is generated if the current GLX context is
170 in display-list construction mode.
173 <constant>GLXBadCurrentWindow
</constant> is generated if the drawable associated
174 with the current context of the calling thread is a window, and that
175 window is no longer valid.
178 <refsect1 id=
"seealso"><title>See Also
</title>
180 <citerefentry><refentrytitle>glBitmap
</refentrytitle></citerefentry>,
181 <citerefentry><refentrytitle>glXMakeCurrent
</refentrytitle></citerefentry>
184 <refsect1 id=
"Copyright"><title>Copyright
</title>
186 Copyright
<trademark class=
"copyright"></trademark> 1991-
2006
187 Silicon Graphics, Inc. This document is licensed under the SGI
188 Free Software B License. For details, see
189 <ulink url=
"http://oss.sgi.com/projects/FreeB/">http://oss.sgi.com/projects/FreeB/
</ulink>.