3e35bfec0c6e2244cad02af8fce64f1a90415e1d
[platform/upstream/fontconfig.git] / doc / fontconfig-devel / fccharsetfirstpage.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
2 <HTML
3 ><HEAD
4 ><TITLE
5 >FcCharSetFirstPage</TITLE
6 ><META
7 NAME="GENERATOR"
8 CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
9 REL="HOME"
10 HREF="t1.html"><LINK
11 REL="UP"
12 TITLE="FcCharSet"
13 HREF="x103.html#AEN1869"><LINK
14 REL="PREVIOUS"
15 TITLE="FcCharSetIsSubset"
16 HREF="fccharsetissubset.html"><LINK
17 REL="NEXT"
18 TITLE="FcCharSetNextPage"
19 HREF="fccharsetnextpage.html"></HEAD
20 ><BODY
21 CLASS="REFENTRY"
22 BGCOLOR="#FFFFFF"
23 TEXT="#000000"
24 LINK="#0000FF"
25 VLINK="#840084"
26 ALINK="#0000FF"
27 ><DIV
28 CLASS="NAVHEADER"
29 ><TABLE
30 SUMMARY="Header navigation table"
31 WIDTH="100%"
32 BORDER="0"
33 CELLPADDING="0"
34 CELLSPACING="0"
35 ><TR
36 ><TH
37 COLSPAN="3"
38 ALIGN="center"
39 ></TH
40 ></TR
41 ><TR
42 ><TD
43 WIDTH="10%"
44 ALIGN="left"
45 VALIGN="bottom"
46 ><A
47 HREF="fccharsetissubset.html"
48 ACCESSKEY="P"
49 >&#60;&#60;&#60; Previous</A
50 ></TD
51 ><TD
52 WIDTH="80%"
53 ALIGN="center"
54 VALIGN="bottom"
55 ></TD
56 ><TD
57 WIDTH="10%"
58 ALIGN="right"
59 VALIGN="bottom"
60 ><A
61 HREF="fccharsetnextpage.html"
62 ACCESSKEY="N"
63 >Next &#62;&#62;&#62;</A
64 ></TD
65 ></TR
66 ></TABLE
67 ><HR
68 ALIGN="LEFT"
69 WIDTH="100%"></DIV
70 ><H1
71 ><A
72 NAME="FCCHARSETFIRSTPAGE"
73 ></A
74 >FcCharSetFirstPage</H1
75 ><DIV
76 CLASS="REFNAMEDIV"
77 ><A
78 NAME="AEN2219"
79 ></A
80 ><H2
81 >Name</H2
82 >FcCharSetFirstPage&nbsp;--&nbsp;Start enumerating charset contents</DIV
83 ><DIV
84 CLASS="REFSYNOPSISDIV"
85 ><A
86 NAME="AEN2222"
87 ></A
88 ><H2
89 >Synopsis</H2
90 ><DIV
91 CLASS="FUNCSYNOPSIS"
92 ><P
93 ></P
94 ><A
95 NAME="AEN2223"
96 ></A
97 ><TABLE
98 BORDER="0"
99 BGCOLOR="#E0E0E0"
100 WIDTH="100%"
101 ><TR
102 ><TD
103 ><PRE
104 CLASS="FUNCSYNOPSISINFO"
105 >#include &#60;fontconfig/fontconfig.h&#62;
106         </PRE
107 ></TD
108 ></TR
109 ></TABLE
110 ><P
111 ><CODE
112 ><CODE
113 CLASS="FUNCDEF"
114 >FcChar32 <TT
115 CLASS="FUNCTION"
116 >FcCharSetFirstPage</TT
117 ></CODE
118 >(const FcCharSet *<TT
119 CLASS="PARAMETER"
120 ><I
121 >a</I
122 ></TT
123 >, FcChar32[FC_CHARSET_MAP_SIZE] <TT
124 CLASS="PARAMETER"
125 ><I
126 >map</I
127 ></TT
128 >, FcChar32 *<TT
129 CLASS="PARAMETER"
130 ><I
131 >next</I
132 ></TT
133 >);</CODE
134 ></P
135 ><P
136 ></P
137 ></DIV
138 ></DIV
139 ><DIV
140 CLASS="REFSECT1"
141 ><A
142 NAME="AEN2234"
143 ></A
144 ><H2
145 >Description</H2
146 ><P
147 >Builds an array of bits in <TT
148 CLASS="PARAMETER"
149 ><I
150 >map</I
151 ></TT
152 > marking the
153 first page of Unicode coverage of <TT
154 CLASS="PARAMETER"
155 ><I
156 >a</I
157 ></TT
158 >.
159 <TT
160 CLASS="PARAMETER"
161 ><I
162 >*next</I
163 ></TT
164 > is set to contains the base code point
165 for the next page in <TT
166 CLASS="PARAMETER"
167 ><I
168 >a</I
169 ></TT
170 >.  Returns the base code
171 point for the page, or <CODE
172 CLASS="CONSTANT"
173 >FC_CHARSET_DONE</CODE
174 > if
175 <TT
176 CLASS="PARAMETER"
177 ><I
178 >a</I
179 ></TT
180 > contains no pages.  As an example, if
181 <TT
182 CLASS="FUNCTION"
183 >FcCharSetFirstPage</TT
184 > returns
185 <TT
186 CLASS="LITERAL"
187 >0x300</TT
188 > and fills <TT
189 CLASS="PARAMETER"
190 ><I
191 >map</I
192 ></TT
193 > with
194 <TABLE
195 BORDER="0"
196 BGCOLOR="#E0E0E0"
197 WIDTH="100%"
198 ><TR
199 ><TD
200 ><PRE
201 CLASS="LITERALLAYOUT"
202 >0xffffffff 0xffffffff 0x01000008 0x44300002 0xffffd7f0 0xfffffffb 0xffff7fff 0xffff0003</PRE
203 ></TD
204 ></TR
205 ></TABLE
206 >
207 Then the page contains code points <TT
208 CLASS="LITERAL"
209 >0x300</TT
210 > through
211 <TT
212 CLASS="LITERAL"
213 >0x33f</TT
214 > (the first 64 code points on the page)
215 because <TT
216 CLASS="PARAMETER"
217 ><I
218 >map[0]</I
219 ></TT
220 > and
221 <TT
222 CLASS="PARAMETER"
223 ><I
224 >map[1]</I
225 ></TT
226 > both have all their bits set.  It also
227 contains code points <TT
228 CLASS="LITERAL"
229 >0x343</TT
230 > (<TT
231 CLASS="PARAMETER"
232 ><I
233 >0x300 + 32*2
234 + (4-1)</I
235 ></TT
236 >) and <TT
237 CLASS="LITERAL"
238 >0x35e</TT
239 > (<TT
240 CLASS="PARAMETER"
241 ><I
242 >0x300 +
243 32*2 + (31-1)</I
244 ></TT
245 >) because <TT
246 CLASS="PARAMETER"
247 ><I
248 >map[2]</I
249 ></TT
250 > has
251 the 4th and 31st bits set.  The code points represented by
252 <TT
253 CLASS="LITERAL"
254 >map[3]</TT
255 > and later are left as an excercise for the
256 reader ;).
257             </P
258 ></DIV
259 ><DIV
260 CLASS="NAVFOOTER"
261 ><HR
262 ALIGN="LEFT"
263 WIDTH="100%"><TABLE
264 SUMMARY="Footer navigation table"
265 WIDTH="100%"
266 BORDER="0"
267 CELLPADDING="0"
268 CELLSPACING="0"
269 ><TR
270 ><TD
271 WIDTH="33%"
272 ALIGN="left"
273 VALIGN="top"
274 ><A
275 HREF="fccharsetissubset.html"
276 ACCESSKEY="P"
277 >&#60;&#60;&#60; Previous</A
278 ></TD
279 ><TD
280 WIDTH="34%"
281 ALIGN="center"
282 VALIGN="top"
283 ><A
284 HREF="t1.html"
285 ACCESSKEY="H"
286 >Home</A
287 ></TD
288 ><TD
289 WIDTH="33%"
290 ALIGN="right"
291 VALIGN="top"
292 ><A
293 HREF="fccharsetnextpage.html"
294 ACCESSKEY="N"
295 >Next &#62;&#62;&#62;</A
296 ></TD
297 ></TR
298 ><TR
299 ><TD
300 WIDTH="33%"
301 ALIGN="left"
302 VALIGN="top"
303 >FcCharSetIsSubset</TD
304 ><TD
305 WIDTH="34%"
306 ALIGN="center"
307 VALIGN="top"
308 ><A
309 HREF="x103.html#AEN1869"
310 ACCESSKEY="U"
311 >Up</A
312 ></TD
313 ><TD
314 WIDTH="33%"
315 ALIGN="right"
316 VALIGN="top"
317 >FcCharSetNextPage</TD
318 ></TR
319 ></TABLE
320 ></DIV
321 ></BODY
322 ></HTML
323 >