使用GDI + Graphics.DrawString打印会产生垃圾字符

时间:2017-10-22 02:28:52

标签: c++ printing gdi+

我使用GDI + Graphics.DrawString调用来打印带有中文字符的文档。所有文本都是Unicode(WCHAR)。问题是,在某些计算机上(占总数的1%),所有中文字符都成为垃圾字符。它似乎试图解释差异代码页中的文本。

  1. 我发现只有普通样式的字符(FontStyleRegular)才有问题。粗体风格的人物都可以。
  2. 我还尝试打印到" Microsoft XPS Document Writer"打印机。问题是一样的。所以打印机驱动程序不是问题。
  3. 我调试了程序,可以确保DrawString调用中的text参数是正确的。

1 个答案:

答案 0 :(得分:0)

我已经通过将字体文件从好的计算机复制到有问题的计算机来解决了这个问题。