经过一下午的研究,我好像是找到原因了, 就算是给个思路吧。还望有真正的高手指正!
有两种情况:1. 中文重叠每次必现(楼主应该是这种情况)。2.中文重叠偶尔出现(我本人是这种情况,我是在ARM机上运行时,偶尔出现这情况的)。
对于第二种情况:经过我的测试,当出现中文字重叠时, 系统报出了以下错误:
QLock::lock(): Identifier removed
QLock::unlock(): Unlock without corresponding lock
Initializing QFontEngineQPF failed for /xxx/qt/lib/fonts/SongTi.ttf
...
解决方法:
第一种情况的可能解决方法:简单就说是FreeType的支持。
Initializing QFontEngineQPF failed for /app/lib/fonts/fontname.ttf
This is an indication that the application cannot handle ttf fonts, you may see this message more than once as it will occur for all the ttf fonts that it finds. In order to fix this then the system needs to have FreeType made available so that Qt can be configured with it (it will auto-detect it so as long as it is installed and in place it should pick it up). Alternatively, you can configure with -qt-freetype and it will use the version of FreeType that is bundled with the Qt package.
第二种情况的原因: 从出错信息猜测, 应该是内存不足,或者是文件描述符等系统资源耗光所致。所以解决方法就是增加内存等。