QT开发中文网

qt QGraphicsView 绘制在图层上,图层可以单独拿出来保存

在Qt中,可以使用QGraphicsScene和QGraphicsView来绘制图形。要将图形绘制到图层上,可以使用QPainterPath和QPainter类。

以下是一个简单的示例代码:

from PyQt5.QtWidgets import QGraphicsScene, QGraphicsView, QGraphicsItem
from PyQt5.QtGui import QPainterPath, QPainter, QColor
from PyQt5.QtCore import Qt

# 创建场景和视图
scene = QGraphicsScene()
view = QGraphicsView(scene)

# 创建一个矩形图元并添加到场景中
rect_item = QGraphicsItem()
rect_item.setRect(0, 0, 100, 100)
scene.addItem(rect_item)

# 创建一个路径并将其设置为画笔的路径
path = QPainterPath()
path.addRect(0, 0, 50, 50)
pen = QPen(Qt.red)
pen.setWidth(2)
pen.setBrush(QColor(Qt.blue))
pen.setCapStyle(Qt.RoundCap)
pen.setJoinStyle(Qt.MiterJoin)
pen.setDashPattern([2,3])
painter = QPainter(path)
painter.setPen(pen)

# 使用画笔绘制路径
painter.drawPath(path)

# 在场景上绘制路径,并保存为PNG文件
view.setViewport(QPixmap())
view.render(painter=QPainter(), target=QRectF(), source=QRectF())
view.viewport().grab().save('layer.png')

此代码会创建一个矩形图元,并在其上面绘制了一条红色线条。最后,它将在场景上绘制这个路径,并将其保存为PNG文件“layer.png”。

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:http://qt.0voice.com/?id=1959

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?