QML的font属性使用
QML中文本相关的元素,一般具有font属性,可以设置文本的字体,例如Text(文本元素)和TextEdit(可编辑文本元素)都有font属性,如下详细介绍font属性的使用。
最常用的font属性
string font.family //字体的名字,字体类型
bool font.bold //是否使用粗体
bool font.italic //是否使用斜体
bool font.underline //是否使用下划线
real font.pointSize //以磅为单位设置字体大小。点大小必须大于零。(1pt = 0.3527mm)
int font.pixelSize //以像素为单位设置字体大小。
font.pointSize和font.pixelSize的区别
使用pointSize以与设备无关的方式设置字体大小。font.pixelSize字体设置依赖于设备。
如果同时指定了pointSize和pixelSize,则将使用pixelSize。
其他font属性
enumeration font.weight //设置文本的粗细 (可以选择的范围是0-99)
字体权重按0到99的比例分类,其中0的权重是超轻的,99的权重是非常黑的。可以使用以下值进行快捷设置:
Font.Thin 0
Font.ExtraLight 12
Font.Light 25
Font.Normal 50
Font.Medium 57
Font.DemiBold 63
Font.Bold 75
Font.ExtraBold 81
Font.Black 87
enumeration font.capitalization //设定文字的大小写属性,(如果有大小写之分的话)
大小写属性只能取得以下的值
Font.MixedCase - 按照正常显示,不修改大小写
Font.AllUppercase - 所有都大写
Font.AllLowercase - 所有都小写
Font.SmallCaps - 修改首字母为小写
Font.Capitalize - 修改首字母为大写
bool font.overline //设置文字上方是否划线
bool font.strikeout //设置文字是否使用删除线
real font.letterSpacing //修改默认的字符间隔,可以是负数,如果是负数减少间隔
real font.wordSpacing //修改默认的词间隔,可以是负数,如果是负数减少间隔
通过如下一个实际的例子,可以验证字体的各个属性,只需将需要验证的属性添加到代码中就可以,读者可以尝试添加并修改属性的值,深入体会字体的各个属性的用法。
Text
{ text: "Hello";
font.weight:Font.DemiBold
font.strikeout:true
font.capitalization:Font.AllUppercase
}
运行结果:HELLO