void MainWindow::print() { QPrinter printer( QPrinter::HighResolution ); QString docName = d_plot->title().text(); if ( !docName.isEmpty() ) { docName.replace ( QRegExp ( QString::fromLatin1 ( "\n" ) ), tr ( " -- " ) ); printer.setDocName ( docName ); } printer.setCreator( "Bode example" ); printer.setOrientation( QPrinter::Landscape ); QPrintDialog dialog( &printer ); if ( dialog.exec() ) { QwtPlotRenderer renderer; if ( printer.colorMode() == QPrinter::GrayScale ) { renderer.setDiscardFlag( QwtPlotRenderer::DiscardCanvasBackground ); renderer.setLayoutFlag( QwtPlotRenderer::FrameWithScales ); } renderer.renderTo( d_plot, printer ); } }
void plotsDialog::print() { QPrinter printer( QPrinter::HighResolution ); Plot* currentPlot = dynamic_cast<Plot*>(tabs->currentWidget()); QString docName = currentPlot->title().text(); if ( !docName.isEmpty() ) { docName.replace ( QRegExp ( QString::fromLatin1 ( "\n" ) ), tr ( " -- " ) ); printer.setDocName ( docName ); } printer.setCreator( currentPlot->title().text()); printer.setOrientation( QPrinter::Landscape ); QPrintDialog dialog( &printer ); if ( dialog.exec() ) { QwtPlotRenderer renderer; if ( printer.colorMode() == QPrinter::GrayScale ) { renderer.setDiscardFlag( QwtPlotRenderer::DiscardBackground ); renderer.setDiscardFlag( QwtPlotRenderer::DiscardCanvasBackground ); renderer.setDiscardFlag( QwtPlotRenderer::DiscardCanvasFrame ); renderer.setLayoutFlag( QwtPlotRenderer::FrameWithScales ); } renderer.renderTo( currentPlot, printer ); } }
void MainWindow::printsvg() { // QString fileName(_record->name2display().append(".svg").c_str()); QString fileName("bfviewer.svg"); const QList<QByteArray> imageFormats = QImageWriter::supportedImageFormats(); QStringList filter; filter += "SVG Documents (*.svg)"; fileName = QFileDialog::getSaveFileName( this, "Export File Name", fileName, filter.join(";;"), NULL, QFileDialog::DontConfirmOverwrite); if (!fileName.isEmpty()) { QSvgGenerator generator; QwtPlotRenderer plotrender; generator.setFileName( fileName ); generator.setSize(_gridPlot->size()); plotrender.renderTo(_gridPlot->p,generator); } }
bool HistogramWindow::saveImage(QString filename) { QImage redPlotImage(2*plotRed->size(), QImage::Format_RGBA8888); QImage greenPlotImage(2*plotGreen->size(), QImage::Format_RGBA8888); QImage bluePlotImage(2*plotBlue->size(), QImage::Format_RGBA8888); QwtPlotRenderer renderer; renderer.renderTo(plotRed, redPlotImage); renderer.renderTo(plotGreen, greenPlotImage); renderer.renderTo(plotBlue, bluePlotImage); QImage result(redPlotImage.width(), redPlotImage.height()+greenPlotImage.height()+bluePlotImage.height(), QImage::Format_RGBA8888); QPainter painter(&result); painter.drawImage(0, 0, redPlotImage); painter.drawImage(0, redPlotImage.height(), greenPlotImage); painter.drawImage(0, redPlotImage.height()+greenPlotImage.height(), bluePlotImage); return result.save(filename); }
void SaxsviewImage::print() { QString printerName = config().recentPrinter(); QPrinter printer(QPrinter::HighResolution); printer.setOrientation(QPrinter::Landscape); if (!printerName.isEmpty()) printer.setPrinterName(printerName); QPrintDialog dlg(&printer, this); if (dlg.exec() == QDialog::Accepted) { QwtPlotRenderer renderer; renderer.renderTo(this, printer); } config().setRecentPrinter(printer.printerName()); }
void Plot::printPlot() { #if 1 QPrinter printer; #else QPrinter printer(QPrinter::HighResolution); #endif printer.setOrientation(QPrinter::Landscape); printer.setOutputFileName("spectrogram.pdf"); QPrintDialog dialog(&printer); if ( dialog.exec() ) { QwtPlotRenderer renderer; renderer.setDiscardFlag(QwtPlotRenderer::DiscardBackground, false); renderer.setLayoutFlag(QwtPlotRenderer::KeepFrames, true); renderer.renderTo(this, printer); } }
void Plot::printPlot() { QPrinter printer( QPrinter::HighResolution ); printer.setOrientation( QPrinter::Landscape ); printer.setOutputFileName( "spectrogram.pdf" ); QPrintDialog dialog( &printer ); if ( dialog.exec() ) { QwtPlotRenderer renderer; if ( printer.colorMode() == QPrinter::GrayScale ) { renderer.setDiscardFlag( QwtPlotRenderer::DiscardBackground ); renderer.setDiscardFlag( QwtPlotRenderer::DiscardCanvasBackground ); renderer.setDiscardFlag( QwtPlotRenderer::DiscardCanvasFrame ); renderer.setLayoutFlag( QwtPlotRenderer::FrameWithScales ); } renderer.renderTo( this, printer ); } }
// Get canvas and print in the output file void DataPlot::saveAsSVG() { Q_EMIT disconnectUpdateDynamicsView(); #if 1 QPrinter printer; #else QPrinter printer(QPrinter::HighResolution); #endif printer.setOrientation(QPrinter::Landscape); printer.setOutputFileName("iarc_simulation01.pdf"); QPrintDialog dialog(&printer); if ( dialog.exec() ) { QwtPlotRenderer renderer; renderer.setDiscardFlag(QwtPlotRenderer::DiscardBackground, false); renderer.setLayoutFlag(QwtPlotRenderer::KeepFrames, true); renderer.renderTo(this, printer); } Q_EMIT connectUpdateDynamicsView(); }
void Clamp::print() { #if 1 QPrinter printer; #else QPrinter printer(QPrinter::HighResolution); #if QT_VERSION < 0x040000 printer.setOutputToFile(true); printer.setOutputFileName("/tmp/FI.ps"); printer.setColorMode(QPrinter::Color); #else printer.setOutputFileName("/tmp/FI.pdf"); #endif #endif QString docName = splot->title().text(); if (!docName.isEmpty()) { docName.replace(QRegExp(QString::fromLatin1("\n")), tr(" -- ")); printer.setDocName(docName); } printer.setCreator("RTXI"); printer.setOrientation(QPrinter::Landscape); #if QT_VERSION >= 0x040000 QPrintDialog dialog(&printer); if ( dialog.exec() ) { #else if (printer.setup()) { #endif /* RTXIPrintFilter filter; if (printer.colorMode() == QPrinter::GrayScale) { int options = QwtPlotPrintFilter::PrintAll; filter.setOptions(options); filter.color(QColor(29, 100, 141), QwtPlotPrintFilter::CanvasBackground); filter.color(Qt::white, QwtPlotPrintFilter::CurveSymbol); } */ // splot->print(printer, filter); QwtPlotRenderer *renderer = new QwtPlotRenderer; renderer->renderTo(splot, printer); } } void Clamp::exportSVG() { QString fileName = "FI.svg"; std::cout<<"flag 0"<<std::endl; #if QT_VERSION < 0x040000 std::cout<<"flag 1"<<std::endl; #ifndef QT_NO_FILEDIALOG std::cout<<"flag 2"<<std::endl; fileName = QFileDialog::getSaveFileName("FI.svg", "SVG Documents (*.svg)", this); #endif std::cout<<"flag 3"<<std::endl; if (!fileName.isEmpty()) { // enable workaround for Qt3 misalignments QwtPainter::setSVGMode(true); QPicture picture; QPainter p(&picture); // splot->print(&p, QRect(0, 0, 800, 600)); QwtPlotRenderer *renderer = new QwtPlotRenderer; renderer->renderTo(splot, p, QRect(0, 0, 800, 600)); p.end(); picture.save(fileName, "svg"); } #elif QT_VERSION >= 0x040300 std::cout<<"flag 4"<<std::endl; #ifdef QT_SVG_LIB std::cout<<"flag 5"<<std::endl; #ifndef QT_NO_FILEDIALOG std::cout<<"flag 6"<<std::endl; fileName = QFileDialog::getSaveFileName(this, "Export File Name", QString(), "SVG Documents (*.svg)"); #endif std::cout<<"flag 7"<<std::endl; if ( !fileName.isEmpty() ) { QSvgGenerator generator; generator.setFileName(fileName); generator.setSize(QSize(800, 600)); // splot->print(generator); } #endif #endif }
void PrinterVisitor::visitGraphCellNodeBefore(GraphCell *node) { if( !ignore_ || firstChild_ ) { ++currentTableRow_; table_->insertRows( currentTableRow_, 1 ); // first column QTextTableCell tableCell( table_->cellAt( currentTableRow_, 0 ) ); if( tableCell.isValid() ) { if( !node->ChapterCounterHtml().isNull() ) { QTextCursor cursor( tableCell.firstCursorPosition() ); cursor.insertFragment( QTextDocumentFragment::fromHtml( node->ChapterCounterHtml() )); } } // second column tableCell = table_->cellAt( currentTableRow_, 1 ); if( tableCell.isValid() ) { QTextCursor cursor( tableCell.firstCursorPosition() ); // input table QTextTableFormat tableFormatInput; tableFormatInput.setBorder( 0 ); tableFormatInput.setColumns( 1 ); tableFormatInput.setCellPadding( 2 ); tableFormatInput.setBackground( QColor(245, 245, 255) ); // 200, 200, 255 QVector<QTextLength> constraints; constraints << QTextLength(QTextLength::PercentageLength, 100); tableFormatInput.setColumnWidthConstraints(constraints); cursor.insertTable( 1, 1, tableFormatInput ); QString html = node->textHtml(); if( !node->isEvaluated() || node->isClosed() ) html += "<br />"; cursor.insertFragment( QTextDocumentFragment::fromHtml( html )); if( node->isEvaluated() && !node->isClosed() ) { QTextTableFormat tableFormatOutput; tableFormatOutput.setBorder( 0 ); tableFormatOutput.setColumns( 1 ); tableFormatOutput.setCellPadding( 2 ); QVector<QTextLength> constraints; constraints << QTextLength(QTextLength::PercentageLength, 100); tableFormatOutput.setColumnWidthConstraints(constraints); cursor = tableCell.lastCursorPosition(); cursor.insertTable( 1, 1, tableFormatOutput ); QString outputHtml( node->textOutputHtml() ); outputHtml.remove( "file:///" ); cursor.insertFragment( QTextDocumentFragment::fromHtml( outputHtml )); } } // print the plot if (node->mpPlotWindow && node->mpPlotWindow->isVisible()) { ++currentTableRow_; table_->insertRows( currentTableRow_, 1 ); // first column tableCell = table_->cellAt( currentTableRow_, 1 ); if( tableCell.isValid() ) { QTextCursor cursor( tableCell.firstCursorPosition() ); // input table QTextTableFormat tableFormatInput; tableFormatInput.setBorder( 0 ); tableFormatInput.setColumns( 1 ); tableFormatInput.setCellPadding( 2 ); QVector<QTextLength> constraints; constraints << QTextLength(QTextLength::PercentageLength, 100); tableFormatInput.setColumnWidthConstraints(constraints); cursor.insertTable( 1, 1, tableFormatInput ); OMPlot::Plot *pPlot = node->mpPlotWindow->getPlot(); // calculate height for widht while preserving aspect ratio. int width, height; if (pPlot->size().width() > 600) { width = 600; qreal ratio = (double)pPlot->size().height() / pPlot->size().width(); height = width * qCeil(ratio); } else { width = pPlot->size().width(); height = pPlot->size().height(); } // create a pixmap and render the plot on it QPixmap plotPixmap(width, height); QwtPlotRenderer plotRenderer; plotRenderer.renderTo(pPlot, plotPixmap); // insert the pixmap to table cursor.insertImage(plotPixmap.toImage()); } } if( firstChild_ ) firstChild_ = false; } }