Showing changes from revision #2 to #3:
Added | Removed | Changed
Entry | |
---|---|
R0 | Font handle (0 for current) |
R1 | Character code (0 to start) |
Exit | |
---|---|
R0 | Corrupted |
R1 | Next character (-1 if this is the last) |
R2 | Internal character code of this character (-1 if unmapped) |
This purpose of this call is to determine which characters are present in a font, and which glyphs in the underlying font file characters map to.
This call works only by looking at encoding files – it cannot guarantee that a given character is actually defined in a font file, but it can return which characters definitely are not, by returning with R2 set to -1.
For the font \FHomerton.Medium\EUTF8
, a call sequence might be:
Entry | Exit | |
---|---|---|
R1 = 0 | R1 = &20 (space) | R2 = -1 |
R1 = &10F (d-caron) | R1 = &112 (E macron) | R2 = &151 |
R1 = &112 (E-macron) | R1 = &113 (e macron) | R2 = &185 |
R1 = &113 (e-macron) | R1 = &116 (E dot) | R2 = &195 |
R1 = &FB02 (f1 ligature) | R1 = -1 | R2 = &FF |
So, in this example, we see that the f1 ligature character (Unicode FB02) is character &FF within the Homerton.Medium font file.
This call may be of use in conjunction with Font_ReadFontMetrics kerning data. Also, it would allow a character map program to scan through the UCS space to find defined characters.