21QFontMetrics fontMetrics(aFont);
24int leading = fontMetrics.leading();
29 QTextLine line = textLayout.createLine();
33 line.setLineWidth(lineWidth);
35 line.setPosition(QPointF(0, height));
36 height += line.height();
58QPainter painter(
this);
59QFontMetrics fontMetrics = painter.fontMetrics();
61int lineSpacing = fontMetrics.lineSpacing();
64QTextLayout textLayout(content, painter.font());
65textLayout.beginLayout();
67 QTextLine line = textLayout.createLine();
72 line.setLineWidth(width());
73 const int nextLineY = y + lineSpacing;
75 if (height() >= nextLineY + lineSpacing) {
76 line.draw(&painter, QPoint(0, y));
79 const QString lastLine = content.mid(line.textStart());
80 const QString elidedLastLine = fontMetrics.elidedText(lastLine, Qt::ElideRight, width());
81 painter.drawText(QPoint(0, y + fontMetrics.ascent()), elidedLastLine);
82 line = textLayout.createLine();
86textLayout.endLayout();