Я использую qt 5.6.2. Я хотел бы сделать снимок экрана на веб-странице. Вот код, который я использую:
#include <QtWidgets/QApplication>
#include <QtWebEngineWidgets/QWebEngineView>
int main(int argc, char *argv[]){
int left, top, width, height;
left = 0;
top = 0;
width = 600;
height = 800;
QApplication a(argc, argv);
QWebEngineView* w = new QWebEngineView();
QImage image(height, width, QImage::Format_RGB32);
QRegion rg(left, top, width, height);
QPainter painter(&image);
w->page()->load(QUrl("https://www.yahoo.com"));
w->show();
w->page()->view()->render(&painter, QPoint(), rg);
painter.end();
image.save("test.png", "PNG", 80);
return a.exec();
}
Запускаю программу, появляется окно, я вижу содержимое yahoo
. Затем я сохраняю результат в test.png
, но это белое изображение. Я не могу сохранить результат в image
или я не могу сохранить результат из image
в файл test.png
и как это исправить?