Это потому, что вы используете FontMetrics
для обоих шрифтов, непрерывно изменяя всплытие.Помните, что вы привязываете функцию к y-позиции и, таким образом, каждый раз, когда FontMetrics
устанавливается на другой шрифт, она будет запускать обновление для y-позиции обоих Text
.
Я предлагаю использовать два FontMetrics
, один для жирного и один для среднего.
FontMetrics { id: fontMetricsBold; font: font_bold }
FontMetrics { id: fontMetricsMedium; font: font_medium }
Text {
x: 100
y: 100 - fontMetricsBold.ascent
font.family: font_bold.name
font.pixelSize: 96
text: "foo"
}
Text {
x: 200
y: 150 - fontMetricsMedium.ascent
font.family: font_medium.name
font.pixelSize: 48
text: "bar"
}
Обратите внимание, у меня нет шрифтов, поэтому я оставляю это как упражнение.Возможно, настройка FontMetrics
должна быть выполнена иначе, чем FontLoader
.