pyQGIS 中的下划线
Underline in pyQGIS
我目前正在 Qgis 上做一些大学项目,我必须使用 Python 来生成地图。
我想知道是否有办法给 str 添加下划线(如屏幕截图所示)。
Text rounded in red is the text I want to underline
提前感谢您的帮助!
确实对于 QGIS 它是特别的......也许它存在其他方法,但我这样做:
首先,您必须将要加下划线的文本与其他文本分开。
然后使用QtGui.QFont自定义字体,并将其应用到想要的文本,而不是以前的setFont。
示例:
...
from PyQt5 import *
...
myTitleBoldFont=QtGui.QFont("Verdana", 27)
myTitleBoldFont.setUnderline(True)
...
TextCustom.setFont(myBoldFont)
别忘了导入PyQt5.
我终于设法使用了在 pyQgis 的文档上找到的另一个解决方案。这是:
# Sous-titre
subtitle = QgsLayoutItemLabel(layout)
subtitle.setMode(QgsLayoutItemLabel.Mode.ModeHtml)
subtitle.setText("<u>Coordonnées GPS :</u> " + (str(y_camping)) + " , " + (str(x_camping))+ " | <u>Téléphone :</u> "+str(tel_camping))
subtitle.setFont(b17)
subtitle.adjustSizeToText()
layout.addLayoutItem(subtitle)
subtitle.attemptMove(QgsLayoutPoint(5, 19, QgsUnitTypes.LayoutMillimeters))
事实上,我只是转换 html 中的标签,然后可以使用 < u >> !
为其中包含的文本添加下划线
我目前正在 Qgis 上做一些大学项目,我必须使用 Python 来生成地图。
我想知道是否有办法给 str 添加下划线(如屏幕截图所示)。
Text rounded in red is the text I want to underline
提前感谢您的帮助!
确实对于 QGIS 它是特别的......也许它存在其他方法,但我这样做:
首先,您必须将要加下划线的文本与其他文本分开。
然后使用QtGui.QFont自定义字体,并将其应用到想要的文本,而不是以前的setFont。
示例:
...
from PyQt5 import *
...
myTitleBoldFont=QtGui.QFont("Verdana", 27)
myTitleBoldFont.setUnderline(True)
...
TextCustom.setFont(myBoldFont)
别忘了导入PyQt5.
我终于设法使用了在 pyQgis 的文档上找到的另一个解决方案。这是:
# Sous-titre
subtitle = QgsLayoutItemLabel(layout)
subtitle.setMode(QgsLayoutItemLabel.Mode.ModeHtml)
subtitle.setText("<u>Coordonnées GPS :</u> " + (str(y_camping)) + " , " + (str(x_camping))+ " | <u>Téléphone :</u> "+str(tel_camping))
subtitle.setFont(b17)
subtitle.adjustSizeToText()
layout.addLayoutItem(subtitle)
subtitle.attemptMove(QgsLayoutPoint(5, 19, QgsUnitTypes.LayoutMillimeters))
事实上,我只是转换 html 中的标签,然后可以使用 < u >> !
为其中包含的文本添加下划线