我在秦创营做CBCT项目时,我的队友做的转换PDF功能的代码要集成在我设计的QT界面中:
队友在转换PDF时用UTF-8字符编码会导致中文乱码,因此他的字符编码用的是国标。
当他.h文件#include我的QT头文件时,就会乱码,因为我的代码中有#pragma execution_character_set("utf-8"),这就会与她将字符编码设置为国标有冲突。因此我做了两点改进:
- 将我代码中的#pragma execution_character_set("utf-8")进行了注释,但是这时我的QT界面的中文又会产生乱码。
- 此时我将我生成Qtstring的方式进行了改变,将fromUtf8改为了fromLocal8Bit,此时我的QT界面的中文也不显示乱码了,PDF中导出的中文也不乱码了。
titleLabel = new QLabel(QString::fromLocal8Bit("CBCT图像质量指标的自动分析工具"), centralWidget);