int index=ui->m_tableWidgetLogger->currentRow();
if(index<0)
return;
int screenResolution = screenPrinter.resolution();
printer.
setOrientation(QPrinter::Portrait);
printer.
setOutputFormat(QPrinter::PdfFormat);
printer.setOutputFileName(fileName);
painter.begin(&printer);
QPen pen
(Qt
::black,
2, Qt
::SolidLine);
painter.setPen(pen);
painter.drawRoundRect(0,0,7400,1050,25,25);
// QPen pen(Qt::black, 20, Qt::SolidLine);
// painter.setPen(pen);
// QLineF line(10,10,15000,10);
// painter.drawLine(line);
painter.scale(0.75f,0.75f);
// painter.setFont(QFont("Helvetica",24,QFont::Bold));
// QRect rect(0,0,painter.viewport().width(),painter.fontMetrics().height());
// painter.drawText(rect,"report",QTextOption(Qt::AlignCenter));
// Print Summary
m_mainApp->m_table->SetTableWidget(summaryTab);
summaryTab->setGeometry(6,8,printer.pageRect().width(),printer.pageRect().height());
summaryTab->setAutoScroll(false);
m_mainApp->m_table->InitTableSummary(summaryTab);
m_mainApp->m_table->FillTableSummary(summaryTab,index);
summaryTab->setAlternatingRowColors(true);
summaryTab
->setFrameShape
(QFrame::NoFrame);
painter.save();
painter.scale(printer.resolution()/(screenResolution*2.5f),printer.resolution()/screenResolution*.5f);
editor->drawContents(&painter);
painter.restore();
if(m_mainApp->mLoggerList[index].recCurrentAddress)
{
// Print Graph
QwtPlotRenderer renderer;
renderer.setDiscardFlag(QwtPlotRenderer::DiscardBackground,false);
renderer.setLayoutFlag(QwtPlotRenderer::KeepFrames,true);
renderer.
render(m_plot,
&painter,
QRect(0,printer.
height()/2,printer.
width(),printer.
height()/2.2));
printer.newPage();
// Print Table
m_mainApp->m_table->SetTableWidget(table);
table->setGeometry(0,0,printer.pageRect().width(),printer.pageRect().height());
table->setAutoScroll(true);
m_mainApp->m_table->InitTablePrint(index,printer.pageRect().width());
int nbPage=m_mainApp->m_table->GetNbPrintPage(index,printer.pageRect().height());
for(int page=0;page<nbPage;page++)
{
m_mainApp->m_table->currentIndex=-1;
m_mainApp->m_table->InitTablePrint(index,printer.pageRect().width());
m_mainApp->m_table->FillTablePrint(index,printer.pageRect().height(),page);
painter.save();
painter.scale(printer.resolution()/(screenResolution*1.5f),printer.resolution()/screenResolution*.45f);
editor->drawContents(&painter);
painter.restore();
printer.newPage();
}
// Print Histogram
renderer.setDiscardFlag(QwtPlotRenderer::DiscardBackground,false);
renderer.setLayoutFlag(QwtPlotRenderer::KeepFrames,true);
// renderer.render(m_histogram,&painter,QRect(0,0,printer.width(),printer.height()/2.2));
renderer.
render(m_histogram,
&painter,
QRect(0,printer.
height()/2,printer.
width(),printer.
height()/2.2));
painter.end();
}