Text in a QGraphicsScene

Narek picture Narek · Jul 22, 2010 · Viewed 19.8k times · Source

How to write text in a certain cordinate in QGraphicsScene? I was trying to do like this, but with no success. Text has blck borders but inside the letters it is white, and I can't make it be black.

QPainterPath path;

QFont font;
font.setPixelSize(50);

path.addText(100, 50, font,  tr("Hello World!!!"));
path.setFillRule();

m_graphScen->addPath(path);

Answer

Narek picture Narek · Jul 23, 2010

Variant 1 (not a good one):

QFont font;
font.setPixelSize(10);
font.setBold(false);
font.setFamily("Calibri");

path.addText(100, 50, font,  "Hello World!!");

m_graphScen->addPath(path, QPen(QBrush(Qt::black), 1), QBrush(Qt::black));

Variant 2 (fine version):

QGraphicsTextItem * io = new QGraphicsTextItem;
io->setPos(150,70);
io->setPlainText("Barev");

m_graphScen->addItem(io);