Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def imprime(self):
- printer = QPrinter(QPrinter.HighResolution)
- printer.setPageSize(QPrinter.A4)
- printer.setColorMode(QPrinter.Color)
- printer.setCreator("Dieu")
- printer.setDocName("ma belle image")
- printer.setOutputFileName("image.pdf")
- dialog = QPrintDialog(printer, self)
- ret = dialog.exec_()
- if ret != QDialog.Accepted:
- return
- painter = QPainter()
- self.export_to_pages(painter, printer)
- def export_to_pages(self, painter, printer):
- """ export_to_pages: export the scene on painter with a number of pages
- """
- w = printer.pageRect().width()
- h = printer.pageRect().height()
- numPage = int(round(self.ui.vue.scene.height() / h))
- painter.begin(printer)
- for page in range(0, numPage):
- self.ui.vue.scene.render(painter, QRectF(0, 0, w, h), QRectF(0, h * page, w, h))
- if page < numPage-1:
- printer.newPage()
- painter.end()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement