Для вывода текста Unicode в Windows вам необходимо закодировать его в UTF-16 и вызвать версию широких символов DrawText()
или TextOut()
Win32.Если вы не знакомы, Windows API изначально UTF-16 и имеет параллельные 8-битные версии ANSI для поддержки предыдущих версий.
Я ничего не знаю об используемой вами оболочке Win32, но скорее подозреваю, что PyCDC.DrawText()
вызывает версию ANSI любой из этих функций Win32, которая выполняет свою работу.Ваше решение, скорее всего, будет связано с поиском способа вызвать DrawTextW()
или TextOutW()
.Вы можете сделать это с помощью ctypes, и эти функции, безусловно, должны быть доступны и через PyWin32.
Однако я, вероятно, выберу что-то более высокое, например PyQt.