Bonjour,
J'ai un problème avec Qt lors de l'impression d'un ticket de caisse. Impossible de supprimer les marges.
Normalement, cela devrait sortir comme sur le ticket n°2. J'ai imprimé un test depuis un fichier texte le ticket n°3, pas de souci
Mais avec mon programme Qt, c'est le ticket n°1 qui sort. Et c'est pas beau ... oui je sais ... Aucun paramètre de l'imprimante me permet de gérer ces marges. Je comprends pas pourquoi.
Voici le morceau de prog :
L'imprimante ticket peut avoir 48 caractères par ligne. ( 80mm )
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 QPrinter printer; QTextDocument doc; QString TE = ui->plainTextEdit_6->toPlainText(); doc.setHtml(TE); QPrintDialog *dialog = new QPrintDialog(&printer, this); dialog->setWindowTitle("Print Document"); if (ui->plainTextEdit_6->textCursor().hasSelection()) dialog->addEnabledOption(QAbstractPrintDialog::PrintSelection); if (dialog->exec() == QDialog::Accepted) doc.print(&printer); return;
J'ai fait un autre code et c'est pareil. Le voici :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43 QTextStream stream3( &toPrint3, QIODevice::WriteOnly ); stream.setCodec(QTextCodec::codecForName("ISO-8859-1")); stream << "BAR / RESTAURATION RAPIDE" << endl << endl << " CHEZ PAM' " << endl << " 31, RUE GAMBETTA " << endl << " 71230 ST VALLIER " << endl << " Telephone : 00.00.00.00.00 " << endl << endl << " Le " << date7 << " - " << temps7 << endl << endl << " Ref : " << temps7C << date7B << temps7A << date7C << temps7B << date7A << endl << " Commande : " << ui->spinBox_28->text() << endl << endl << ui->plainTextEdit_6->toPlainText() << endl << endl; << " TOTAL COMMANDE : " << ui->doubleSpinBox->text() << endl << " REGLE : " << ui->montantReglerEspeces->text() << endl << " RENDU : " << ui->totalRendu->text() << endl << endl << " Ticket client a presenter " << endl << " Valable ce jour uniquement " << endl << endl << " CHEZ PAM' " << endl << " vous remercie, A bientot " << endl << " BON APPETIT " << endl << endl; QPrinter printer3; printer3.setPageMargins(1, 1, 1, 1, QPrinter::Millimeter); QPrintDialog dialog3( &printer3, this ); // Phrase a retirer pour que l'impression se lance sans validation if( dialog3.exec() == QDialog::Accepted )// Phrase a retirer pour que l'impression se lance sans validation { // Phrase a retirer pour que l'impression se lance sans validation QTextDocument document3( toPrint3 ); QFont newFont3(document3.defaultFont()); newFont3.setFamily("Courier New"); newFont3.setPixelSize(12); newFont3.setBold(30); //75 document3.setDefaultFont(newFont3); document3.print( &printer3 ); } // Phrase a retirer pour que l'impression se lance sans validation
Partager