.\" This manpage has been automatically generated by docbook2man
.\" from a DocBook document. This tool can be found at:
.\"
.\" Please send any bug reports, improvements, comments, patches,
.\" etc. to Steve Cheng .
.TH "FcCharSetFirstPage" "3" "2022/03/31" "Fontconfig 2.14.0" ""
.SH NAME
FcCharSetFirstPage \- Start enumerating charset contents
.SH SYNOPSIS
.sp
\fB#include
.sp
FcChar32 FcCharSetFirstPage (const FcCharSet *\fIa\fB, FcChar32[FC_CHARSET_MAP_SIZE] \fImap\fB, FcChar32 *\fInext\fB);
\fR
.SH "DESCRIPTION"
.PP
Builds an array of bits in \fImap\fR marking the
first page of Unicode coverage of \fIa\fR\&.
\fI*next\fR is set to contains the base code point
for the next page in \fIa\fR\&. Returns the base code
point for the page, or FC_CHARSET_DONE if
\fIa\fR contains no pages. As an example, if
\fBFcCharSetFirstPage\fR returns
0x300 and fills \fImap\fR with
.nf
0xffffffff 0xffffffff 0x01000008 0x44300002 0xffffd7f0 0xfffffffb 0xffff7fff 0xffff0003
.fi
Then the page contains code points 0x300 through
0x33f (the first 64 code points on the page)
because \fImap[0]\fR and
\fImap[1]\fR both have all their bits set. It also
contains code points 0x343 (\fI0x300 + 32*2
+ (4-1)\fR) and 0x35e (\fI0x300 +
32*2 + (31-1)\fR) because \fImap[2]\fR has
the 4th and 31st bits set. The code points represented by
map[3] and later are left as an exercise for the
reader ;).