• 5248阅读
  • 4回复

[提问]QTextEdit里有英文、有中文,如何给英文和中文,设置不同的字体?就像word那样的效果。 [复制链接]

上一主题 下一主题
离线qdxianxing
 
只看楼主 倒序阅读 楼主  发表于: 2012-05-01
— 本帖被 XChinux 从 Qt基础编程 移动到本区(2013-04-01) —
如题。
离线alexltr

只看该作者 1楼 发表于: 2012-05-01
参考Qt范例:demos---->textedit
我不从事IT,只是喜欢Qt。
我不是程序员,只是与程序有缘。
我写程序,只是为了让工作变得简单有序!

                      ----  一个一直在入门的编程学习者
离线qdxianxing
只看该作者 2楼 发表于: 2012-05-01
引用第1楼alexltr于2012-05-01 09:17发表的  :
参考Qt范例:demos---->textedit



不是我想要的效果。

参考Qt范例:demos---->textedit的效果是:选中某些文字,然后手动地设置字体、大小、下划线等等。


我的意思是,希望程序自动地识别是中文还是英文,然后自动地给予不同的字体。我希望程序是自动的。word就有这个功能。

离线qdxianxing
只看该作者 3楼 发表于: 2012-05-01
找到一个好的解决方法:

    QFont ff("Times New Roman,SimSun,SimSun-ExtB");
    app.setFont(ff);

这样的话,对于每个字符:
程序优先到Times New Roman字体库查找并显示,,如果字符不在Times New Roman的字体库范围内,那么,到SimSun字体库查找,如果不在SimSun的字体库范围内,那么,到SimSun-ExtB字体库查找。
离线benbenmajia

只看该作者 4楼 发表于: 2012-05-02
你这样还是没有自动识别是什么文字。
如果真的要识别,应该是转换到unicode下分别处理。
安然.....
快速回复
限100 字节
 
上一个 下一个