2012-04-27 2 views
0

이것은 바보처럼 들리지만 QwebView의 스크린 샷을 찍을 수 없습니다.Qt QPaintDevice를 QImage로 변환 할 수 없습니다.

QImage image(view.page()->viewportSize(), QImage::Format_ARGB32); 
QPainter painter; 
painter.begin(image); // Here is the error. See below 
view.page()->mainFrame()->render(&painter); 
painter.end(); 
image.save("out.png"); 

그리고 오류 MSG가,

mainwindow.cpp:115: error: no matching function for call to 'QPainter::begin(QImage&)' 
candidate is bool QPainter::begin(QPaintDevice*) 

는 내가 알고있는 것은, QPaintDevice는 QPaint의 기본입니다.

painter.begin(&image); 

답변

4

는 포인터 image을 전달해야 오류에서 보이는 방법 begin는 도면 표면에 대한 포인터가 아닌 참조가 필요합니다. 시도해보십시오.

painter.begin(&image); 
+0

감사. 콘솔에서 후보자를 찾고 있었지만 찾지 못했습니다. :) – Dewsworld

3

오류 메시지가 말했다 :