Hallo Michael,
nicht Delphi, sondern Windows hat da eine Funktion:
Delphi-Quellcode:
// uses Windows;
function GlyphIndex(Canvas: TCanvas; wc: WideChar): Cardinal;
var
index: Word;
flags: Cardinal;
begin
flags := GGI_MARK_NONEXISTING_GLYPHS;
if GetGlyphIndicesW(Canvas.Handle, @wc, 1, @index, flags) = GDI_ERROR
then Result := GDI_ERROR
else Result := Index;
end;
Funktioniert aber nicht mit allen Fonts zuverlässig. Wenn du eine absolut zuverlässige Funktion brauchst, dann wirst du wahrscheinlich die Fonts direkt untersuchen müssen.
Grüße vom marabu