.\" 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 ;).