天嵌 ARM开发社区

 找回密码
 注册
12
返回列表 发新帖
楼主: 天嵌_support1

问题解决办法总结_qt4_中文字体设置

[复制链接]
mojian 发表于 2010-12-8 15:32:53 | 显示全部楼层
成功了  Widget改为QWidget
guoxixiao 发表于 2010-12-22 23:46:03 | 显示全部楼层
顶顶顶顶顶顶顶顶顶顶顶顶
shangshan 发表于 2011-3-15 23:14:50 | 显示全部楼层
困了我四个月,至今还是没解决。我又改了hello_cn,这么一个简单的例程,其中把字体表示的数字改多少都没反应。我真的无语了。wqy-zenhei.ttci也放到了/opt/EmbedSky/root_nfs/opt/qt-4.5/lib/fonts 这个目录里。我所有的目录命名都严格按照手册上来的。

请大家给指点一下,到底是为什么?

ps:系统重装过了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
shangshan 发表于 2011-3-16 15:47:44 | 显示全部楼层
之前装的是fedora10,现在装的是fedora14 都还是不行。真是邪门了。
shangshan 发表于 2011-3-18 09:47:11 | 显示全部楼层
做如下几个实验:
1.        添加wqy-zenhei.ttc到/opt/EmbedSky/root_nfs/opt/qt-4.5/lib/fonts中,可以使用该字体,但改不了大小。
2.        把fonts文件夹的所有字体都删光,结果有字的部分就都是方框了。
3.        在fonts里仅仅保留wqy-zenhei.ttc,那么无论设w.setFont(QFont("wqy-zenhei",14,QFont::Normal));中的字体种类设置成什么,都调用fonts文件夹中仅剩的文泉驿字体。而无论设置字体大小为多少,都仅能显示一种字体大小。

从上面的实验可以总结一下,我这里的程序都是去找fonts文件夹中的一种默认的字体,w.setFont不起作用。这到底是为什么呢?
我用的是nfs调试,fedora14下的qtcreator2.0
 楼主| 天嵌_support1 发表于 2011-3-18 14:10:42 | 显示全部楼层
看看是不是Linux的开发环境问题引起。
你试一试在Windows下开发利用试一试
shangshan 发表于 2011-4-3 14:29:03 | 显示全部楼层
又做了两个实验:
1.怀疑是在linux下的qtcreator开发环境的问题,于是直接在命令行中调试代码。运行了下面这个脚本:
  1. #!/bin/sh

  2. source /opt/EmbedSky/qt-4.5/setARM_env
  3. $QMAKE -project
  4. $QMAKE
  5. make clean
  6. make
  7. cp -f hello_cn /opt/EmbedSky/root_nfs/opt/qt-4.5/bin/hello_cn
复制代码
我的工程就一个主函数:
  1. #include <QtGui>
  2. #include <QTextCodec>
  3. #include <QFont>

  4. int main(int argc, char *argv[])
  5. {
  6.     //QWidget w;
  7.     QApplication a(argc, argv);
  8.     QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));
  9.     QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
  10.     //QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
  11.     QWidget w;
  12.     w.setFont(QFont("wqy-zenhei",30,QFont::Normal));//这行是关键,没有这行是显示不了中文的。
  13.     w.setWindowTitle(QObject::tr("你好吗?why?"));
  14.     w.show();
  15.     return a.exec();
  16. }
复制代码
结果还是无效。字体大小改不了,在上面的语句中把“wqy-zenhei”随便改成任意的字符都没影响。我已经把/opt/EmbedSky/root_nfs/opt/qt-4.5/lib/fonts中的字体全部删空了,只留下了wqy-zenhei.ttc。

2.在windows下把wqy-zenhei.ttc放到我windows下qt的安装目录的\lib\fonts中,然后使用visual studio2008调试上面的这个代码,字体不对,大小也换不了。

2.
请叫我不良 发表于 2012-11-17 18:31:32 | 显示全部楼层
我的怎么也不行呢?是不是内核也有影响?
涉柘 发表于 2012-11-17 21:26:22 | 显示全部楼层
试了一下,可以显示了,不过还有点问题。
wenxinhua 发表于 2013-7-19 16:00:59 | 显示全部楼层
shangshan 发表于 2010-10-13 21:17
QT_QWS_FONTDIR=$QTDIR/lib/fonts/ 之前就已经加在了etc/profile里了。我是用的天嵌的板子和文件系统,所以 ...

我也遇到这个问题,顶
chenweignag 发表于 2013-8-14 19:43:02 | 显示全部楼层
版主,你好,用你这个方法无法改变字体大小啊。用的TQ2440 文件系统 环境变量都是按照手册光盘给的。求指点
lzg371 发表于 2015-1-8 13:55:57 | 显示全部楼层
本帖最后由 lzg371 于 2015-1-8 13:57 编辑

说实话,我要感谢shangshan, 你说的非常对,天嵌默认选中的字体确实是helvetica_120_50.qpf,但是原因我也不知道,希望懂的人给予解答。天嵌的默认配置选择字体到底在哪里?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号 )

GMT+8, 2024-5-18 11:02 , Processed in 1.062500 second(s), 16 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表