Advertisement
Guest User

Untitled

a guest
Sep 23rd, 2017
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.26 KB | None | 0 0
  1. void window::exportDocument()
  2. {
  3. #ifndef QT_NO_PRINTER
  4.     QString fileName = "mutual_inf.pdf";
  5. #else
  6.     QString fileName = "mutual_inf.png";
  7. #endif
  8.  
  9. #ifndef QT_NO_FILEDIALOG
  10.     const QList<QByteArray> imageFormats =
  11.         QImageWriter::supportedImageFormats();
  12.  
  13.     QStringList filter;
  14.     filter += "PDF Documents (*.pdf)";
  15. #ifndef QWT_NO_SVG
  16.     filter += "SVG Documents (*.svg)";
  17. #endif
  18.     filter += "Postscript Documents (*.ps)";
  19.  
  20.     if ( imageFormats.size() > 0 )
  21.     {
  22.         QString imageFilter("Images (");
  23.         for ( int i = 0; i < imageFormats.size(); i++ )
  24.         {
  25.             if ( i > 0 )
  26.                 imageFilter += " ";
  27.             imageFilter += "*.";
  28.             imageFilter += imageFormats[i];
  29.         }
  30.         imageFilter += ")";
  31.  
  32.         filter += imageFilter;
  33.     }
  34.  
  35.     fileName = QFileDialog::getSaveFileName(
  36.         this, "Export File Name", fileName,
  37.         filter.join(";;"), NULL, QFileDialog::DontConfirmOverwrite);
  38. #endif
  39.  
  40.     if ( !fileName.isEmpty() )
  41.     {
  42.         QwtPlotRenderer renderer;
  43. #if 0
  44.         // flags to make the document look like the widget
  45.         renderer.setDiscardFlag(QwtPlotRenderer::DiscardBackground, false);
  46.         renderer.setLayoutFlag(QwtPlotRenderer::KeepMargins, true);
  47.         renderer.setLayoutFlag(QwtPlotRenderer::KeepFrames, true);
  48. #endif
  49.         renderer.renderDocument(plot_mutualinf, fileName, QSizeF(300, 200), 85);
  50.     }
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement