QTE4支持中文字体QT版本:qte-4.6.2
开发板:FL2440
编译器:arm-unknown-linux-gnueabi-gcc-4.4.6
不知持中文字体的qt界面,字体显示为方块或者是无内容。下面来解决这个问题。
1.下载后缀为qpf的wenquanyi字体
复制wenquanyi_120_50.qpf 和wenquanyi_120_70.qpf到文件系统的$QTDIR/lib/fonts下。
注:120为12号字体,70与50相比,70为粗体。字体号的根据开发板LCD的大小选择吧,我下载的字号有12、13、15、16。
2.这一步是编程相关的。这是我的例子:
- #include "mainwindow.h"
- #include <QTextCodec>
- int main(int argc, char *argv[])
- {
- QApplication app(argc, argv);
- QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));
- QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8")); //支持Tr中文
- QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8")); //支持中文文件名显示
- QFont font;
- font.setPointSize(12); //12的字号
- font.setFamily(("wenquanyi"));
- font.setBold(false);
- app.setFont(font);
- MainWindow window;
-
- window.show();
- bool ok = app.exec();
- ////////......
- return ok;
- }
关键是#include <QTextCodec>这个头文件。
这样写出来的程序就支持中文了。对于ttf的字体可以用QT自带的makeqpf程序转换成qpf字体。
阅读(1632) | 评论(0) | 转发(0) |