QPixmap de un QGraphicsTextItem
-
12-09-2019 - |
Pregunta
¿Cómo convertir / pintar un QGraphicsTextItem en un QPixmap?
Solución
Puede agregarlo a una QGraphicsScene
(si no está ya dentro de uno) y luego render()
la escena a un QPixmap
utilizando un QPainter
QPixmap pix(100, 100);
QPainter paint(&pix);
scene.render(&paint);
O bien, puede ahorrarse el trabajo y sólo tiene que utilizar QPainter::drawText()
después de cambiar la fuente actual del pintor. debe proporcionar las mismas capacidades.
Tal vez algo como esto -
QPixmap pix(100, 100);
QPainter paint(&pix);
paint.drawText(0, 0, "Hello World");
Otros consejos
El documento QGraphicsTextItem :: () es la puerta de atrás que está buscando:
// pItem is a QGraphicsTextItem *
QPixmap srcPixmap(pItem->boundingRect().size().toSize());
QPainter tmpPainter(&srcPixmap);
pItem->document()->drawContents(&tmpPainter);
tmpPainter.end()
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow