Einzelnen Beitrag anzeigen

Ydobon

Registriert seit: 3. Mär 2006
264 Beiträge
 
Delphi 11 Alexandria
 
#12

AW: Name von Unicode-Zeichen

  Alt 28. Jun 2017, 09:37
Mal schnell was rauskopiert. Funktioniert mit japanischen Text und Tahoma vs. Arial Unicode MS.

Delphi-Quellcode:
var pwOutGlyphs: PWord;
    i, cwstr: Integer;
    wstr: String;
    erg: Cardinal;
begin
  wstr:=Edit1.Text;
  cwstr:=Length(wstr);
  if wstr='then exit;
  GetMem(pwOutGlyphs, cwstr*2);
  ZeroMemory(pwOutGlyphs, cwstr*2);
  erg:=GetGlyphIndices(Canvas.Handle, @wstr[1], cwstr, pwOutGlyphs, GGI_MARK_NONEXISTING_GLYPHS);
  if erg=GDI_ERROR then RaiseLastOSError;
  ExtTextOut(Canvas.Handle, 10, 6, ETO_GLYPH_INDEX, Nil, PChar(pwOutGlyphs), cwstr, Nil);
  Memo1.Clear;
  for i:=0 to cwstr-1 do Memo1.Lines.Add(IntToHex(PWordArray(pwOutGlyphs)[i], 4));
end;
Edit: War noch von D2005.

Geändert von Ydobon (28. Jun 2017 um 09:47 Uhr)
  Mit Zitat antworten Zitat