Amelioration du support de l'impression :

*pour le moment, le schema est adapte a la taille de la feuille sans autre possibilite
*necessite le paquet cupsys-bsd sous X11
*L'option QPrinter::HighResolution n'est pas encore exploitee


git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@160 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
xavierqet
2007-10-05 14:42:56 +00:00
parent 579783bba5
commit d8f96e1ea9

View File

@@ -457,20 +457,26 @@ void DiagramView::dialogExport() {
Imprime le schema.
*/
void DiagramView::dialogPrint() {
// initialise l'acces a l'imprimante
QPrinter qprin;
qprin.setOutputFormat(QPrinter::PdfFormat);
qprin.setOrientation(QPrinter::Landscape);
qprin.setPageSize(QPrinter::A4);
#ifdef Q_WS_X11
// qprin.setPrintProgram("lpr");
#endif
QPrintDialog qpd(&qprin, this);
if (qpd.exec() == QDialog::Accepted) {
QPainter qp(&qprin);
// impression physique (!= fichier PDF)
if (qprin.outputFileName() == QString()) {
// lorsqu'on imprime en paysage sur imprimante reelle, il faut pivoter soi-meme le rendu
if (qprin.orientation() == QPrinter::Landscape) {
qp.rotate(90.0);
qp.translate(0.0, -qprin.pageRect().height());
}
}
scene -> setDisplayGrid(false);
scene -> setDrawTerminals(false);
scene -> render(&qp);
scene -> render(&qp, QRectF(), scene -> border(), Qt::KeepAspectRatio);
scene -> setDrawTerminals(true);
scene -> setDisplayGrid(true);
}