QPixmap di un QGraphicsTextItem
-
12-09-2019 - |
Domanda
Come si fa a convertire / dipingere un QGraphicsTextItem in una QPixmap?
Soluzione
È possibile aggiungerlo a una QGraphicsScene
(se non è già all'interno di uno) e poi render()
la scena ad un QPixmap
utilizzando un QPainter
QPixmap pix(100, 100);
QPainter paint(&pix);
scene.render(&paint);
In alternativa, è possibile salvare la fatica e basta usare QPainter::drawText()
dopo aver cambiato il carattere corrente del pittore. dovrebbe fornire le stesse capacità.
Forse qualcosa di simile -
QPixmap pix(100, 100);
QPainter paint(&pix);
paint.drawText(0, 0, "Hello World");
Altri suggerimenti
Il QGraphicsTextItem :: documento () è la porta sul retro che stai cercando:
// pItem is a QGraphicsTextItem *
QPixmap srcPixmap(pItem->boundingRect().size().toSize());
QPainter tmpPainter(&srcPixmap);
pItem->document()->drawContents(&tmpPainter);
tmpPainter.end()
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow