0

我正在搞乱 Pyside6 中 QGraphicsView 实例的打印预览。我尝试了很多事情,但无法做到正确。

def onPreview(self):
    printer = QtPrintSupport.QPrinter(QtPrintSupport.QPrinter.HighResolution)
    layout = QtGui.QPageLayout()
    layout.setOrientation(QtGui.QPageLayout.Landscape)
    layout.setPageSize(QtGui.QPageSize.A3)
    printer.setPageLayout(layout)

    preview = QtPrintSupport.QPrintPreviewDialog(printer, self.parent)
    preview.paintRequested.connect(self.handlePaintRequest)
    preview.exec_()

# handle paint request
def handlePaintRequest(self, printer):
    # render QGraphicsView
    self.parent.view.render(QtGui.QPainter(printer))

该片段可以正常工作而不会引发错误,但预览中的页面方向始终是纵向的。打印时页面大小也不起作用。当然,我以错误的方式处理这个问题。

4

0 回答 0