Type Method


Returns a character set containing characters determined by a given bitmap representation.


+ (NSCharacterSet *)characterSetWithBitmapRepresentation:(NSData *)data;



A bitmap representation of a character set.

Return Value

A character set containing characters determined by data.


This method is useful for creating a character set object with data from a file or other external data source.

A raw bitmap representation of a character set is a byte array with the first 2^16 bits (that is, 8192 bytes) representing the code point range of the the Basic Multilingual Plane (BMP), such that the value of the bit at position n

represents the presence in the character set of the character with decimal Unicode value n. A bitmap representation may contain zero to sixteen additional 8192 byte segments to for each additional Unicode plane containing a character in a character set, with each 8192 byte segment prepended with a single plane index byte.

To add a character in the Basic Multilingual Plane (BMP) with decimal Unicode value n

to a raw bitmap representation, you might do the following:
unsigned char bitmapRep[8192];
bitmapRep[n >> 3] |= (((unsigned int)1) << (n & 7));

To remove that character:

bitmapRep[n >> 3] &= ~(((unsigned int)1) << (n & 7));

See Also

Creating and Managing Character Sets as Bitmap Representations

+ characterSetWithContentsOfFile:

Returns a character set read from the bitmap representation stored in the file a given path.


An NSData object encoding the receiver in binary format.