2

QGraphicsTextItem を QPixmap に変換/ペイントするにはどうすればよいですか?

4

2 に答える 2

4

それを に追加してQGraphicsScene(まだ 1 の中にない場合) 、を使用しrender()てシーンを に追加できます。QPixmapQPainter

QPixmap pix(100, 100);
QPainter paint(&pix);
scene.render(&paint);

または、手間を省いてQPainter::drawText()、ペインターの現在のフォントを変更してから使用することもできます。同じ機能を提供する必要があります。

たぶん、このようなもの-

QPixmap pix(100, 100);
QPainter paint(&pix);
paint.drawText(0, 0, "Hello World");
于 2009-08-07T13:06:00.343 に答える
0

QGraphicsTextItem::document() 関数は、探している裏口です。

// pItem is a QGraphicsTextItem *
QPixmap srcPixmap(pItem->boundingRect().size().toSize());

QPainter tmpPainter(&srcPixmap);
pItem->document()->drawContents(&tmpPainter);
tmpPainter.end()
于 2012-06-09T01:24:12.647 に答える