Prev |  | Next

# FcCharSetFirstPage

## Name

FcCharSetFirstPage -- Start enumerating charset contents

## Synopsis

    #include <fontconfig/fontconfig.h>

``FcChar32 FcCharSetFirstPage`(const FcCharSet *a, FcChar32[FC_CHARSET_MAP_SIZE] map, FcChar32 *next);`

## Description

Builds an array of bits in `map` marking the first page of Unicode coverage of `a`. `*next` is set to contains the base code point for the next page in `a`. Returns the base code point for the page, or `FC_CHARSET_DONE` if `a` contains no pages. As an example, if `FcCharSetFirstPage` returns `0x300` and fills `map` with

    0xffffffff 0xffffffff 0x01000008 0x44300002 0xffffd7f0 0xfffffffb 0xffff7fff 0xffff0003

Then the page contains code points `0x300` through `0x33f` (the first 64 code points on the page) because `map[0]` and `map[1]` both have all their bits set. It also contains code points `0x343` (`0x300 + 32*2 + (4-1)`) and `0x35e` (`0x300 + 32*2 + (31-1)`) because `map[2]` has the 4th and 31st bits set. The code points represented by `map[3]` and later are left as an excercise for the reader ;).

Prev | Home | Next
FcCharSetIsSubset | Up | FcCharSetNextPage