Qt 中的字体设置(QFont)

Posted 岁月神偷小拳拳

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt 中的字体设置(QFont)相关的知识,希望对你有一定的参考价值。

头文件:#include<QFont>

字体类,通过设置QFont的类型,来实现批量改变文字的属性。

QFont常用属性

 

函数 描述

 

setFamily

设置字体

setPixelSize

设置字体像素大小

setBold

字体加粗

setItalic

斜体

setPointSize

设置字体大小

setOverline

上划线

setUnderline

下划线

setStrikeOut

删除线

 

说明:设置字体大小和像素大小的区别

setPixelSize()函数使用像素作为单位来设置字体大小。使用setPixelSize函数设置大小,在像素大小不同的设备上显示的大小也不同。

setPointSize()函数规定了实际中我们肉眼看到的字体的大小,与像素无关。使用setPointSize函数设置大小,在不同设备上显示的大小是相同的。

 

常用的字体:

宋体 SimSun

黑体 SimHei

微软雅黑 Microsoft YaHei

微软正黑体 Microsoft JhengHei

新宋体 NSimSun

新细明体 PMingLiU

细明体 MingLiU

标楷体 DFKai-SB

仿宋 FangSong

楷体 KaiTi

仿宋_GB2312 FangSong_GB2312

楷体_GB2312 KaiTi_GB2312

 

例子1:以QLineEdit输入框为例实现部分QFont的用法;

QFont font;//实例化QFont对象

//font.setFamily("微软雅黑");//字体
//font.setPixelSize(25);//文字像素大小
//font.setPointSize(20);//文字大小
//font.setUnderline(true);//下划线
//font.setStrikeOut(true);//中划线
//font.setOverline(true);//上划线
//font.setItalic(true);//斜体
//font.setBold(true);//粗体
// font.setStyle(QFont::StyleOblique);
// font.setCapitalization(QFont::Capitalize);//首字母大写

// font.setLetterSpacing(QFont::PercentageSpacing,200);//间距

QLineEdit*p=new QLineEdit(this);
p->resize(300,100);
p->move(0,100);
p->setFont(font);

 

例子2:定义一个QPushButton的按钮,设置按钮上的字体。

QPushButton *showBtn;
showBtn = new QPushButton(this);
showBtn->setGeometry(1495, 755, 120, 40);//按钮的位置和大小,(x,y)坐标,长、宽
showBtn->setText("ShowImage");//按钮中的文字
showBtn->setFont(QFont("Microsoft YaHei", 10, QFont::Bold));
connect(showBtn, SIGNAL(clicked()), this, SLOT(showImg()));//点击按钮,进行相应的操作,showImg()是定义在public slots中的一个函数。

以上是关于Qt 中的字体设置(QFont)的主要内容,如果未能解决你的问题,请参考以下文章

用Adobe Acrobat Pro X 在从word到PDF制作时,word中的仿宋、楷体无法保持,全变成了宋体

font-style字体设置

关于QFont类中设置字体的一些函数

常用字体

font-family 字体

Qt qlabel 设置字体大小加粗等