http://bugs.winehq.org/show_bug.cgi?id=7861
Summary: DrawTextExA doesn't use charset of currently selected font for Unicode translation Product: Wine Version: 0.9.33. Platform: PC OS/Version: Linux Status: UNCONFIRMED Severity: minor Priority: P2 Component: wine-user AssignedTo: wine-bugs@winehq.org ReportedBy: mgrzeskowiak@tlen.pl
I got this problem with commercial application (no download) but I was able to create simple application (I will attach it) that behaves in the same way. It displays russian text in a window. In Windows XP I got the same results when using TextOutA and DrawTextA (to get 'A' variants I compile with UNICODE undefined under Dev-C++). In Wine TextOutA displays the text but with DrawTextA I get glyphs from wrong code page. I tried to locate the source of the problem and I found that DrawTextExA function in dlls/user32/text.c always uses CP_ACP for multibyte to unicode conversion while TextOutA gets the codepage from GetTextCharset(hdc).