qpixmap من qgraphicstextitem
-
12-09-2019 - |
سؤال
كيف يمكنك تحويل / ترسم QGRAPHICSTEXTEM في qpixmap؟
المحلول
يمكنك إضافته إلى QGraphicsScene
(إذا لم يكن بالفعل داخل واحد) ثم render()
المشهد إلى QPixmap
باستخدام أ QPainter
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");
نصائح أخرى
وظيفة QGRAPHICSTEXTEM :: Document () هي الباب الخلفي الذي تبحث عنه:
// pItem is a QGraphicsTextItem *
QPixmap srcPixmap(pItem->boundingRect().size().toSize());
QPainter tmpPainter(&srcPixmap);
pItem->document()->drawContents(&tmpPainter);
tmpPainter.end()
لا تنتمي إلى StackOverflow