MCPcopy Index your code
hub / github.com/PyQt5/PyQt / doScreenShot

Method doScreenShot

QWebEngineView/ScreenShotPage.py:138–158  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

136 self.webView.resize(page.contentsSize().toSize())
137
138 def doScreenShot():
139 rect = self.webView.contentsRect()
140 size = rect.size()
141 image = QImage(size, QImage.Format_ARGB32_Premultiplied)
142 image.fill(Qt.transparent)
143
144 painter = QPainter()
145 painter.begin(image)
146 painter.setRenderHint(QPainter.Antialiasing, True)
147 painter.setRenderHint(QPainter.TextAntialiasing, True)
148 painter.setRenderHint(QPainter.SmoothPixmapTransform, True)
149
150 self.webView.render(painter, QPoint())
151 painter.end()
152 self.webView.resize(oldSize)
153
154 # 添加到左侧list中
155 item = QListWidgetItem(self.widgetRight)
156 image = QPixmap.fromImage(image)
157 item.setIcon(QIcon(image))
158 item.setData(Qt.UserRole + 1, image)
159
160 # 先等一下再截图吧
161 QTimer.singleShot(2000, doScreenShot)

Callers

nothing calls this directly

Calls 3

setIconMethod · 0.80
resizeMethod · 0.45
setDataMethod · 0.45

Tested by

no test coverage detected