我的QT程序QPrintPreviewDialog打印预览和打印的效果都是重叠,qwebview中
显示确实正常的。
代码如下,求高手指点:
#ifndef QT_NO_PRINTER
// 打印预览
ui.ReportView->load(QUrl("
http://www.baidu.com"));
ui.ReportView->show();
QPrintPreviewDialog *dialog = new QPrintPreviewDialog(this);
connect(
dialog, SIGNAL(paintRequested(QPrinter*)),
ui.ReportView, SLOT(print(QPrinter*)));
dialog->exec();
// 打印
//QPrinter printer;
//printer.setPaperSize(QPrinter::A4);
//printer.setOrientation(QPrinter::Landscape);
//QPrintDialog *dialog1 = new QPrintDialog(&printer, this);
//if (dialog1->exec() != QDialog::Accepted)
//{
// return;
//}
//QWebFrame *frame = ui.ReportView->page()->mainFrame();
//frame->print(&printer);
可以断定的是和字符有关,只要存在半字节和全字节混合出现就会导致
中文重叠。
但是网页肯定是中英文混合的,难道QT的webview不支持中文网页的打印吗?