扩展标签字符
Expanding label characters
考虑以下玩具示例:
from PyQt5 import QtWidgets, QtGui
class MainWindow(QtWidgets.QMainWindow):
def __init__(self):
super(MainWindow, self).__init__()
self.w = QtWidgets.QWidget()
layout = QtWidgets.QVBoxLayout()
self.w.setLayout(layout)
self.setCentralWidget(self.w)
toyLabel = QtWidgets.QLabel("Hello!")
layout.addWidget(toyLabel)
font = QtGui.QFont("Times", 16, QtGui.QFont.Bold)
font.setStretch(150)
toyLabel.setFont(font)
if __name__ == '__main__':
app = QtWidgets.QApplication([])
window = MainWindow()
window.show()
app.exec_()
如何扩展 toyLabel
的字母而不扭曲它?
如上使用 setStretch()
结果是一团糟:
我也曾尝试在样式表中使用 font-stretch
属性 来扩展字母,但这不受支持。
显然,这可以直接在 font
样式表中设置 属性:
QLabel {
font: 12px Times Expanded;
}
考虑以下玩具示例:
from PyQt5 import QtWidgets, QtGui
class MainWindow(QtWidgets.QMainWindow):
def __init__(self):
super(MainWindow, self).__init__()
self.w = QtWidgets.QWidget()
layout = QtWidgets.QVBoxLayout()
self.w.setLayout(layout)
self.setCentralWidget(self.w)
toyLabel = QtWidgets.QLabel("Hello!")
layout.addWidget(toyLabel)
font = QtGui.QFont("Times", 16, QtGui.QFont.Bold)
font.setStretch(150)
toyLabel.setFont(font)
if __name__ == '__main__':
app = QtWidgets.QApplication([])
window = MainWindow()
window.show()
app.exec_()
如何扩展 toyLabel
的字母而不扭曲它?
如上使用 setStretch()
结果是一团糟:
我也曾尝试在样式表中使用 font-stretch
属性 来扩展字母,但这不受支持。
显然,这可以直接在 font
样式表中设置 属性:
QLabel {
font: 12px Times Expanded;
}