IsDBCSLeadByteEx hat nichts mit einem Font zu tun sondern nur mit der angegebenen Codepage.
1.
GetTextMetricW liefert dir eine TEXTMETRICW-Struktur (weiß jetzt nicht wie die in Delphi heißt), da stehen u.a. die Felder
Zitat von
MSDN:
tmFirstChar
Specifies the value of the first character defined in the font.
tmLastChar
Specifies the value of the last character defined in the font.
tmDefaultChar
Specifies the value of the character to be substituted for characters not in the font.
tmBreakChar
Specifies the value of the character that will be used to define word breaks for text justification.
2.
GetFontUnicodeRanges liefert dir die in der Schrift definierten Zeichen.
3. Du könntest
GetGlyphIndicesW mit einem String von
TEXTMETRICW.tmFirstChar bis
TEXTMETRICW.tmLastChar und Parameter
GGI_MARK_NONEXISTING_GLYPHS aufrufen und dann im Ergebnisarray überprüfen, welche Zeichen es wirklich gibt.
Alle Funktionen erwarten einen HDC (-> TCanvas.Handle), in den die betreffende Schrift selektiert ist.