QGraphicsTextItem在缩放后显得模糊

时间:2017-03-31 22:30:20

标签: python qt pyqt pyside

我有一个为另一个QGraphicsWidget添加标签的类 在我的QGraphicsScene中。缩放由比例因子设定; 在我缩放之后,它变得模糊。

这是没有缩放的样子:

通常情况如下:

When changing scale, the image becomes blurry

在我的QGraphicsView中,我将渲染提示设置为:

self.setRenderHints(QPainter.Antialiasing | QPainter.SmoothPixmapTransform | QPainter.TextAntialiasing)

这似乎只会影响绘画项目。



这是我的代码:

class Label(QGraphicsWidget):
    def __init__(self, node):
        super(Label, self).__init__()
        self.install = "label"
        self.node = node
        self.textItem = QGraphicsTextItem(self)

        font = self.textItem.font() #type: QFont
        font.setStyleStrategy(QFont.PreferAntialias)
        self.textItem.setFont(font)

        self.setFlag(QGraphicsItem.ItemIsSelectable, False)
        self.setFlag(QGraphicsItem.ItemIsFocusable, False)

        self.set()

        self.node.nameChanged.connect(self.set)

    def set(self):
        # print "setting: {}".format(self.node.name)
        self.textItem.setPlainText(self.node.name)
        self.prepareGeometryChange()
        self.setPreferredSize(
        QSizeF(self.textItem.boundingRect().width(), self.textItem.boundingRect().height())
    )

    def boundingRect(self):
        return self.textItem.boundingRect()

0 个答案:

没有答案