正确地在QML应用中使用fontsize
2015-06-05 11:34
429 查看
我们知道我们有时需要显示text文本,但是,在QML应用中,我们应该如何选择font的大小呢?在今天的这篇文章中,我们将展示在Ubuntu平台中的不同文字的大小。我们可以通过FontUtils来帮我们把“large”字体的text转换为pixel大小。
我们的测试应用如下:
显示的界面如下:
![](http://img.blog.csdn.net/20150605112409156?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvVWJ1bnR1VG91Y2g=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](http://img.blog.csdn.net/20150605112430902?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvVWJ1bnR1VG91Y2g=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](http://img.blog.csdn.net/20150605112614993?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvVWJ1bnR1VG91Y2g=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](http://img.blog.csdn.net/20150605112804832?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvVWJ1bnR1VG91Y2g=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](http://img.blog.csdn.net/20150605112642636?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvVWJ1bnR1VG91Y2g=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](http://img.blog.csdn.net/20150605112708228?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvVWJ1bnR1VG91Y2g=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
我们可以通过改变在ListView中的font大小得到相应的pixsize及多少个units.gu值。根据这个,我们可以来选择我们适合的字体的大小。
整个项目的源码在:https://github.com/liu-xiao-guo/fontsize
我们的测试应用如下:
import QtQuick 2.4 import Ubuntu.Components 1.3 MainView { // objectName for functional testing purposes (autopilot-qt5) objectName: "mainView" // Note! applicationName needs to match the "name" field of the click manifest applicationName: "fontsize.liu-xiao-guo" width: units.gu(60) height: units.gu(85) property string fontsize: listview.currentItem.fontsize Page { title: i18n.tr("fontsize") Component { id: highlightBar Rectangle { width: 200; height: 50 color: "#FFFF88" y: listview.currentItem.y; Behavior on y { SpringAnimation { spring: 2; damping: 0.1 } } } } Column { anchors.fill: parent spacing: units.gu(2) Text { id: unitsgu text: "1 units.gu = " + units.gu(1) + " pixels" } Row { spacing: units.gu(1) Text { id: mytext text: "我爱你!" font.pixelSize: (FontUtils.sizeToPixels(fontsize)).toFixed(2) } Text { text: mytext.font.pixelSize + " pixels" } Text { text: (mytext.font.pixelSize/units.gu(1)).toFixed(2) + " units.gu" } } Row { spacing: units.gu(1) Label { id: mylabel text: "我也爱你!" fontSize: fontsize } Text { text: mylabel.fontSize } Text { text: (FontUtils.sizeToPixels(mylabel.fontSize)).toFixed(2) + " pixels" } Text { text: (mytext.font.pixelSize/units.gu(1)).toFixed(2)+ " units.gu" } } ListView { id: listview anchors.horizontalCenter: parent.horizontalCenter width: parent.width height: parent.height - mytext.height highlight: highlightBar model: ["xx-small","x-small", "small", "medium", "large", "x-large" ] delegate: Text { property string fontsize: modelData text: modelData + " " + (FontUtils.modularScale(modelData)).toFixed(2) font.pixelSize: units.gu(5) MouseArea { anchors.fill: parent onClicked: { listview.currentIndex = index } } } } } } }
显示的界面如下:
我们可以通过改变在ListView中的font大小得到相应的pixsize及多少个units.gu值。根据这个,我们可以来选择我们适合的字体的大小。
整个项目的源码在:https://github.com/liu-xiao-guo/fontsize
相关文章推荐
- Objective-C Runtime 运行时之三:方法与消息
- ZigZagConversion
- java string类型转换boolean类型
- js 格式化时间日期
- Java并发编程-ConcurrentHashMap
- 无法启动T-SQL 调试
- CrashMonkey4Android-如何进行二次开发
- 数字密码将死,还敢用支付宝网银么
- Core Java 结合 android 新发现(一)
- js常见事件
- 类模板示例及类中成员函数的模板化
- postgres备份数据库
- jQuery 事件
- VectorCAST软件自动化测试方案
- 程序员的量化交易之路(25)--Cointrader之MarketData市场数据实体(12)
- How to reuse old PCs for Solr Search Platform?
- 80后辣妈致2015年749万名应届大学生的一封信
- iOS利用Runtime自定义控制器POP手势动画
- MySQL索引类型一览 让MySQL高效运行起来
- openSSL命令、PKI、CA、SSL证书原理