Gui*_*nto 6 qt qwebview qwebkit qprinter
唯一的问题是纠正,QPrintPreviewDialog
但当打印在纸上打印时,故障仍然存在.
随着QPrintPreviewDialog
网页的工作完美,但"纸"(纸打印)从第二页"文本"和"图像"(无背景)消失(显然是错误只发生(即除第一个出现的BUG所有页面)内联元素).
请参阅:https: //bugreports.qt.io/browse/QTBUG-37240(请参阅测试用例的附件)
打印带有小字体和图像的QWebView的第一页.
显然,只有内联元素(文本和图像)才会出现问题.
注意:该错误发生在Windows XP,Windows 7,Window 7 x64,Mac OS X 10.8.3中
[编辑]
Source-html:http://jsfiddle.net/bdm6Y/2/
框架内容:http://jsfiddle.net/bdm6Y/2/show/
资源:
QPrinter p;
p.setPaperSize(QPrinter::A4);
p.setFullPage(true);
p.setResolution(300);
p.setOrientation(QPrinter::Portrait);
QPrintPreviewDialog preview(&p);
preview.setWindowTitle(ui->myWebView->page()->mainFrame()->title());
connect(&preview, SIGNAL(paintRequested(QPrinter*)), this, SLOT(printPreview(QPrinter*)));
preview.exec();
...
void printPreview(QPrinter *printer) {
ui->myWebView->print(printer);
}
Run Code Online (Sandbox Code Playgroud)
我不知道这是一个错误还是我做错了什么,它会是什么?
谢谢!
[编辑]
QT错误报告:
Qt5.3中修复的问题
在Windows下测试的代码:
QPrinter print(QPrinter::HighResolution);
print.setPageMargins(qreal(1), qreal(1), qreal(1), qreal(1), QPrinter::Millimeter);
print.setPaperSize(QPagedPaintDevice::A4);
QPrintPreviewDialog pd(&print, mwindow, Qt::Window);
QObject::connect(&pd, SIGNAL(paintRequested(QPrinter *)), this, SLOT(preview(QPrinter *)));
if(pd.exec() == QPrintPreviewDialog::Accepted) {
/*something*/
}
...
void MainWindow::preview(QPrinter* p) {
mframe->print(p);//mframe is an QWebFrame
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1544 次 |
最近记录: |