0

如何QGraphicsScene在 pyQT中渲染图形图像

我有一个图像QGraphicsScene,它是由多个QGraphicsPixMapItem项目创建的。

我需要将其渲染为磁盘上的单个图像。

谢谢

4

1 回答 1

1

您只需获取您希望捕获的组合边界矩形,然后将其渲染到QPixmap. 您可以QPixmap在那时保存。

未经测试,但应该符合...

import operator

items = get_target_items() # just get all the items you want
# combine all the scene rects for the items
# equiv:   totalRect = rect1 | rect2 | ...
totalRect = reduce(operator.or_, (i.sceneBoundingRect() for i in items))

pix = QtGui.QPixmap(totalRect.width(), totalRect.height())
painter = QtGui.QPainter(pix)
scene.render(painter, totalRect)
pix.save("capture.jpg", "JPG")
于 2012-12-21T05:25:01.620 回答