• 3820阅读
  • 4回复

[提问]请问:QT能把HTML代码生成图片吗? [复制链接]

上一主题 下一主题
离线newedition
 
只看楼主 倒序阅读 楼主  发表于: 2012-08-07
关键词: QT4求助问题
我想把HTML页面,保存成图片格式,没思路,求高手解答
离线kimtaikee

只看该作者 1楼 发表于: 2012-08-07
  1. QPixmap QPixmap::grabWidget ( QWidget * widget, int x = 0, int y = 0, int width = -1, int height = -1 )

离线XChinux

只看该作者 2楼 发表于: 2012-08-07
webView->page()->currentFrame()->render()
用这个方法。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线newedition
只看该作者 3楼 发表于: 2012-08-07
回 1楼(kimtaikee) 的帖子
能多给点代码吗?  谢谢了
离线newedition
只看该作者 4楼 发表于: 2012-08-07
回 2楼(XChinux) 的帖子
QImage image;
    QWebPage *page2;
    QUrl url("http://yanboo.ycool.com/post.608996.html");
    QWebFrame *frame=page2->mainFrame();
    QSize size=frame->contentsSize();
    image = QImage(size, QImage::Format_ARGB32_Premultiplied);
    image.fill(Qt::transparent); //不要背景          
    // render the web page
    QPainter p(&image); //关键就在这里,创建painter时不采用QWidget,而是QImage,
    p.setRenderHint(QPainter::Antialiasing, true);
    p.setRenderHint(QPainter::TextAntialiasing, true);
    p.setRenderHint(QPainter::SmoothPixmapTransform, true);
    page2->setViewportSize(size);
    frame->render(&p);
    p.end();

请教下,我这个代码里哪有错误? 运行不了呢  谢谢了
快速回复
限100 字节
 
上一个 下一个