Название: Принтер чеков 
					Отправлено: Alucard от Февраля 04, 2012,  03:55
					 
					Пытаюсь распечатать используя QPrinter на принтере чеков (Brother QL-500) При выборе размера бумаге в нативном диалоге печатается. Правда по длине ограничивается, отрезает, даже если нужно печатать чек длиннее, хотя длина не указывается вообще. При установке вручную в коде - выдает ошибку - неправильный размер бумаги (выставляем тот же размер что и в нативном диалоге, и не только). При попытке получить размер бумаги выдает отрицательные результаты.
  Как запилить печать? 
  з.ы. натыкался на этом форуме на otpd. Но как-то не въехал, что там - куда и зачем. Возможно автору не затруднит навести на путь истинный, или екзампл какой. 
					 
					 
					Название: Re: Принтер чеков 
					Отправлено: cya-st от Февраля 05, 2012,  17:18
					 
					Кинь пример как ты выводиш на печать 
					 
					 
					Название: Re: Принтер чеков 
					Отправлено: Alucard от Февраля 05, 2012,  17:31
					 
						QPrinter printer; 	printer.setPrinterName("Brother QL-500"); 	printer.setFullPage(true); 	QRect pageRect = printer.pageRect(); 	QSizeF paperSize = pageRect.size();
  //	printer.setPaperSize(paperSize, QPrinter::Millimeter);
  //	qDebug() << printer.paperSize(QPrinter::Inch); <<<<<<<<<<<<<<<<<<<<<<<<< отрицательные значение вообще //	qDebug() << printer.paperSize(QPrinter::Point); <<<<<<<<<<<<<<<<<<<<<<<< отрицательные значение вообще
  	qreal left, top, right, bottom; 	printer.getPageMargins(&left, &top, &right, &bottom, QPrinter::DevicePixel); 	qDebug() << left << top << right << bottom << "\n";
  	qDebug() << "Millimeter" << printer.paperSize(QPrinter::Millimeter); 	qDebug() << "Point" << printer.paperSize(QPrinter::Point); 	qDebug() << "Inch" << printer.paperSize(QPrinter::Inch); 	qDebug() << "Pica" << printer.paperSize(QPrinter::Pica); 	qDebug() << "Didot" << printer.paperSize(QPrinter::Didot); 	qDebug() << "Cicero" << printer.paperSize(QPrinter::Cicero); 	qDebug() << "DevicePixel" << printer.paperSize(QPrinter::DevicePixel);
  	printer.setPaperSize(QSizeF(2.4375, 3.5416), QPrinter::Inch);
  	qDebug() << "Millimeter" << printer.paperSize(QPrinter::Millimeter); 	qDebug() << "Point" << printer.paperSize(QPrinter::Point); 	qDebug() << "Inch" << printer.paperSize(QPrinter::Inch); 	qDebug() << "Pica" << printer.paperSize(QPrinter::Pica); 	qDebug() << "Didot" << printer.paperSize(QPrinter::Didot); 	qDebug() << "Cicero" << printer.paperSize(QPrinter::Cicero); 	qDebug() << "DevicePixel" << printer.paperSize(QPrinter::DevicePixel);
  	printer.setPaperSize(QSizeF(234,340), QPrinter::DevicePixel);
  	qDebug() << "Millimeter" << printer.paperSize(QPrinter::Millimeter); 	qDebug() << "Point" << printer.paperSize(QPrinter::Point); 	qDebug() << "Inch" << printer.paperSize(QPrinter::Inch); 	qDebug() << "Pica" << printer.paperSize(QPrinter::Pica); 	qDebug() << "Didot" << printer.paperSize(QPrinter::Didot); 	qDebug() << "Cicero" << printer.paperSize(QPrinter::Cicero); 	qDebug() << "DevicePixel" << printer.paperSize(QPrinter::DevicePixel);
  	QPainter painter(&printer); 	painter.drawRoundedRect(printer.paperRect().adjusted(left, top, -right, -bottom), 3, 3); 	painter.drawText(printer.pageRect(), Qt::AlignCenter, QString::fromUtf8("OLOLO\nANOTHER LINE\n%1x%2"). 													arg(paperSize.width()).arg(paperSize.height()));
 
 
   
					
  
					
				 |