Я использую приложение icomoon , чтобы использовать svgs в качестве глифа в пользовательском шрифте.
С изображением
![enter image description here](https://i.stack.imgur.com/o0WWw.png)
имеет несколько цветов, icomoon генерирует несколько символов для одного и того же символа. В таком случае надлежащий стиль должен установить соответствующие цвета и наложить их на слой.
Когда я пытаюсь отобразить глиф в QLabel, стиль margin-left, похоже, игнорируется. Я пробовал наложение разных глифов, полей справа и разных юнитов, но поле никогда не применялось:
![enter image description here](https://i.stack.imgur.com/iMJoq.png)
Я использую PyQT
import typing as t
from PyQt5 import QtWidgets, QtCore, QtGui
class CardViewWidget(QtWidgets.QWidget):
def __init__(self, parent: t.Optional[QtWidgets.QWidget] = None):
super().__init__(parent)
font = QtGui.QFont('icomoon', 40)
self._info_label = QtWidgets.QLabel(self)
self._info_label.setFont(font)
self._info_label.setText(
'<span style="color: #aae0fa"></span><span style="margin-left:-1em; color: #061922;"></span>'
)
self._info_label.setTextFormat(QtCore.Qt.RichText)
self._layout = QtWidgets.QVBoxLayout()
self._layout.addWidget(self._info_label)
self.setLayout(self._layout)
Разве нельзя использовать поле для текста, как это в qt? Он правильно отображается в браузере, а поле находится в списке поддерживаемых qts.
Спасибо.