分享

Qt在Linux环境下字体模糊的解决方法

 quasiceo 2016-07-15

Qt在Linux环境下字体模糊的解决方法

2011-06-17 11:00 佚名 互联网 字号:T | T
一键收藏,随时查看,分享好友!

本文介绍是Qt在Linux环境下字体模糊的解决方法,Qt是一个跨平台的软件,为什么还会出现这种问题呢?那该怎样解决呢?本文将会为你讲解。

AD:51CTO 网+ 第十二期沙龙:大话数据之美_如何用数据驱动用户体验

QtLinux环境下字体模糊,我一直以为是不兼容的问题,要想知道该怎样解决这个问题,那么看本文的内容吧。

这两天一直在用Qt实现一个跨平台的软件。软件之前在Windows上编写的,后来放到里Ubuntu 10.10下编译。程序运行时遇到一个很棘手的问题,界面文本非常模糊。后来在网上查阅了好几天的资料,经历了无数次实验,最终解决了这一问题。下面以一个Demo程序来重现这一问题。

本文中的编译平台为:Ubuntu 10.10 x86版, g++ 4.4.5, Qt 4.7.3自己编译的

首先看看我的Demo程序字体模糊时的截图:

qt在linux环境下字体模糊的解决方法

一个软件界面的文本要是这样子,根本无法接受。

有人说要通过qtconfig来修改默认字体,可是我修改了好多次,都不成功,还是这样。

最后找到原因,首先是我把QtLinux中默认的字体“AR PL UKai CN”设置死了,如下图所示:

qt在linux环境下字体模糊的解决方法

为什么说设置死了呢?看上图右下角,“字体族”一行,该行末尾后的小箭头为红色,这表示该属性当前不是默认值,如果是默认值,这个小箭头应该为灰色显示。要解决字体模糊的问题,第一步应该将界面上所有设置死的字体族改回默认值,只需要选中要更改字体族的部件,在右侧到属性列表中点击红色到小箭头,使其变灰,这样就可以设置为默认值了。

第二步,在终端中输入“qtconfig”(不含引号),打开qt配置程序,如下图所示:

qt在linux环境下字体模糊的解决方法

在右侧第二个选项卡“字体”中我们可以看到,字体族当前为“ AR PL UKai CN ”,在下方的“样例文本”中我们也可以看到,这几个字同样非常模糊,我们点击字体族右边到上下箭头,弹出字体族选择列表,如下图所示:

qt在linux环境下字体模糊的解决方法

因为我们的目标不仅要显示英文,还要显示中文,因此我们选择“Song Ti”(宋体)这一项,再修改点大小为11,此时“样例文本”就清晰多了。如下图所示:

qt在linux环境下字体模糊的解决方法

设置完成之后,点击“文件”菜单,选择“保存”来保存当前配置,如下图所示:

qt在linux环境下字体模糊的解决方法

此时应该能立即看到更改后的效果,如下图所示:

qt在linux环境下字体模糊的解决方法

Qt配置程序界面的字体已经变得清晰多了,那么我们的程序是不是也变化了呢?来看一下,如下图所示:

qt在linux环境下字体模糊的解决方法

从上图我们可以看到,自己写的程序界面中字体也非常清晰了,为了验证中文兼容性,我还在Text Edit部件中输入了若干汉字,同样没有问题,字体依然清晰。整个过程中,除了第一步修改默认字体后重新编译了本程序,在对Qt配置进行修改后并没有也没必要重新编译程序。程序界面的字体就发生了变化。

值得注意的是,qtconfig工具只在Linux下存在,Mac版的Qt库中是否有这个工具我还没有验证,但Windows中肯定没有。另外,在qtconfig工具中我设置的字体族为“Song Ti”,该字体在“点大小”小于11号时就又不清晰了。需要更小字体的朋友可以设置字体族为“Wenquanyi Bitmap Song”(基于位图的文泉驿宋体),该字体设置为小字号时仍可显示得很清晰。

小结:QtLinux环境下字体模糊的解决方法,不知道有么有帮你解决问题,希望本文对你有帮助。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多