Pyqt添加字体

Pyqt添加字体

    系统自带字体不可能全部的字体都有,我们使用pyqt作为gui时希望能够统一字体,这时就要添加字体。

  1. 添加单个字体

 

QtGui.QFontDatabase.addApplicationFont(“./*.ttf”)

或者是*.otc

 

  1. 添加文件夹下多个字体

    思路:获取文件夹下所有字体文件添加进来

     

    利用glob获取文件夹下所有文件


def
setMyFont(self):


import glob


#
返回文件名

fonts = glob.glob(‘poppins/Poppins*.otf’)


for font in fonts:

fontID = QtGui.QFontDatabase.addApplicationFont(font)

 

 

 

闻道有先后
术业有专攻

From: shaynerain.com

By: Shaynerain

PyQt中进行宽屏适配可以通过设置字体来实现。在PyQt中,可以使用QFont类来设置字体的样式和大小。 首先,我们需要创建一个新的QFont对象,然后使用setPointSize()函数设置字体的大小。例如,可以通过调用font.setPointSize(12)来设置字体的大小为12像素。 此外,还可以使用setFamily()函数设置字体的样式。例如,可以通过调用font.setFamily("Arial")来设置字体的样式为Arial字体。 最后,将新创建的字体对象应用到需要显示的控件上,可以使用setFont()函数来完成。例如,可以通过调用widget.setFont(font)将新创建的字体对象应用到控件widget上。 对于宽屏适配,我们可以根据屏幕的宽度来动态地调整字体的大小。可以使用QDesktopWidget类的screenGeometry()函数来获取当前屏幕的大小,然后根据比例系数动态调整字体的大小。 例如,可以根据屏幕的宽度调整字体的大小,可以使用下面的代码片段: ```python import sys from PyQt5.QtWidgets import QApplication, QWidget, QDesktopWidget, QLabel, QVBoxLayout from PyQt5.QtGui import QFont class MyWidget(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): # 获取屏幕的宽度 screen_width = QDesktopWidget().screenGeometry().width() # 设置字体的大小为屏幕宽度的1/20 font_size = screen_width // 20 font = QFont() font.setPointSize(font_size) label = QLabel("Hello, PyQt!") label.setFont(font) layout = QVBoxLayout() layout.addWidget(label) self.setLayout(layout) if __name__ == '__main__': app = QApplication(sys.argv) widget = MyWidget() widget.resize(800, 600) widget.setWindowTitle('PyQt 宽屏适配 字体') widget.show() sys.exit(app.exec_()) ``` 在上面的代码中,我们通过计算屏幕宽度的1/20来设置字体的大小。然后,创建一个QLabel控件并将新创建的字体对象应用于该控件。最后,将QLabel控件添加到垂直布局中,并在QWidget上设置该布局。 这样,当窗口打开时,字体的大小将根据屏幕宽度进行动态调整,实现宽屏适配。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值