擅长:python、mysql、java
<p>要在Windows上输出Unicode文本,需要用UTF-16编码,并调用<a href="http://msdn.microsoft.com/en-us/library/dd162498%28VS.85%29.aspx" rel="nofollow">^{<cd1>}</a>或<a href="http://msdn.microsoft.com/en-us/library/dd145133%28v=VS.85%29.aspx" rel="nofollow">^{<cd2>}</a>Win32函数的宽字符版本。如果您不熟悉,windowsapi本机是UTF-16,并且有并行的8位ANSI版本来支持遗留版本。在</p>
<p>我对您使用的Win32包装器一无所知,但怀疑<code>PyCDC.DrawText()</code>正在调用这些Win32函数中任何一个的ANSI版本。您的解决方案可能涉及找到一种调用<code>DrawTextW()</code>或{<cd5>}的方法。您可以用ctypes来实现,而且这些函数肯定也可以通过PyWin32使用。在</p>
<p>但是,我可能会选择更高级别的东西,比如PyQt。在</p>