中文显示

嵌入式Qt方案中文显示系列:国际化支持实现

纵然是瞬间 提交于 2019-12-03 03:26:33
上文提到了Qt的国际化支持方案,这里对这一方案进行简要的说明。 使用Qt的国际化支持和翻译机制功能来实现中文的显示,中文字库的支持还是必需的,然后就是使用的Qte库必须包含了翻译特性,不能将翻译特性给裁剪掉,即在qconfig-xxx.h配置文件中不能定义有如下的宏: #define QT_NO_TRANSLATION 此外还需要使用Qt配套提供的QT Linguist语言工具来辅助实现翻译工作的完成。 Qt Linguist提供的工具 linguist 用来进行语言翻译的辅助图形界面工具,方便地进行语言的翻译,可提高翻译效率但非必须 lupdate 用来检查源文件并生成待翻译的TS格式文件的工具,它检查源文件使用了tr函数的地方 lrelease 用来将XML格式的TS翻译文件转换成QT使用的二进制格式的文件工具,以TS文件为输入 这三个工具的使用会涉及到两种格式的文件,即上面提到的TS文件和qm文件: TS文件:是一个XML格式的文件,由lupdate工具以所有源文件为输入自动生成,之后需要进行人工的语言翻译工作;该工作既可以使用linguist工具来完成,也可以直接进行对文件使用文本编辑器来完成。一个TS文件的简单示例为: translation内的中文为人工翻译的,lupdate生成的初始文件该处为空。 <!DOCTYPE TS><TS> <context> <name

嵌入式Qt方案中文显示系列:应用程序本地中文显示的实现

 ̄綄美尐妖づ 提交于 2019-12-01 18:58:01
嵌入式Qt应用程序进行中文显示有两种解决方案,一种是直接在代码中使用中文,利用QTextCodec类来实现,另一种是使用qt平台的国际化支持机制,通过语言翻译来实现。第一种方案直接明了,相对来说也简单方便一点,除了编码时麻烦点(来回切换输入法),而第二种方法的优点是具有良好的扩展性,代码中全部使用英文,然后使用中文翻译文件来进行语言翻译,当需要其它语言方案时,只需要添加翻译文件就可以。这里先介绍第一种方案,之后再写第二方案的文章。 方案实现 直接使用中文,利用QTextCodec类来实现中文的显示方案实现通过下面的三个步骤: 中文字体文件的存在:前文提到过字体文件的内容,文泉驿字体库是支持中文的。 应用程序代码中QTextCodec的设置和QFont字体的设置:对整个应用程序来说,一般是放在main函数中进行设置,大概的代码如下: int main(int argc, char *argv[]) { QApplication app(argc,argv); ... QTextCodec* codec = QTextCodec::codecForName("UTF-8"); app.setFont(QFont("wenquanyi",16,75,FALSE,QFont::Unicode)); app.setDefaultCodec(codec); ... return app

嵌入式Qt方案中文显示系列:Qte中的字体支持和使用

最后都变了- 提交于 2019-11-30 19:34:14
前话: 工作以来在项目中主要的开发工作都是用嵌入式QT开发界面,从一开始的从零摸索,到现在有点头绪和经验,很多东西和用法依然只是知其然,不知其所以然,甚至一些还仅仅是模仿阶段。在这期间,学的东西很零散,所以现在有一次做这块,打算弄明白一些东西,也算对自己付出的时间有个交待。 使用嵌入式Qt作为嵌入式GUI的解决方案,其实会比较轻松,除了几个不多的难点,就我目前的经验,一个是资源占用问题,对于资源紧张的系统优化会比较难,一个是中文显示的问题,这个也是我第一次花的时间很多的一块,网上这块的资料很多,说明问题比较普遍。现在回过头来看,实际上也不是那么难搞定。这里就中文显示写几遍学习理解的文章,即为自己,也方便后来者。 支持的字体 嵌入式Qt支持4中格式的字体,分别是: TrueType(TTF) 可缩放字体格式,桌面系统中主要使用的字体 PostscripType(PFA/PFB) 可缩放字体格式,打印主要使用的字体,可TTF类似 Bitmap Distribution Format fonts (BDF) 不可缩放字体的标准格式,在X11平台系统中可以找到 Qt Prerendered Font (QPF) Qt预渲染字体,专用于嵌入式Qt的一种字体格式 QPF字体格式是嵌入式Qt内置支持的字体,可以使用QT SDK中提供的makeqpf工具利用前三种字体文件来生成

在 vm 下安装的 redHat 5 中文显示(方块乱码)及小企鹅输入法

梦想的初衷 提交于 2019-11-30 04:17:36
在 vm 下安装的 redHat 5 默认安装成的英文, 现在将它改成 中文 并安装 小企鹅输入法 一.将redHat 5 设置成中文环境(解决方块乱码问题) 1.从网上下载 fonts-chinese-3.02-9.6.el5.noarch.rpm fonts-ISO8859-2-75dpi-1.0-17.1.noarch.rpm 两个文件,给出下载地址 (直接 google): http://pkgs.org/centos-5-rhel-5/centos-rhel-i386/fonts-chinese-3.02-12.el5.noarch.rpm/download/ http://rpm.pbone.net/index.php3/stat/4/idpl/8079316/com/fonts-ISO8859-2-75dpi-1.0-17.1.noarch.rpm.html 2.拷贝到 redHat 5中,双击运行他们(或用命令) 3.点击系统工具栏->系统->管理->语言,更改为chinese(PRC) ,重启,安装成功 二.安装小企鹅输入法(中文) 1.下载 小企鹅输入法: http://ishare.sina.cn/dintro.php?id=16309443 2.拷贝到 redHat 5 中, 双击运行 3.配置: a.进入 root 用户 (su -) b.进入/etc