[转] QT 小票打印
2010-09-08 22:03
260 查看
原地址: http://www.cppblog.com/biao/archive/2009/09/08/95603.html
QString htmlString = QString("<html>") + str1 + str2 +str3 + finerysInfo + str5 + str6
+ QString("<br>%1<br>%2").arg(separateString) + QString("</html>");
printString(htmlString);
accept();
}
void PrintDialog::printString(const QString &htmlString) {
qDebug() << htmlString;
QPrinter p;
QTextDocument doc;
//doc.setHtml(htmlString);
QFont font = doc.defaultFont();
font.setBold(true);
font.setPointSize(font.pointSize() + 1);
doc.setDefaultFont(font);
QSizeF s = QSizeF(p.logicalDpiX() * (58 / 25.4), p.logicalDpiY() * (297 / 25.4));
doc.setPageSize(s);
p.setOutputFormat(QPrinter::NativeFormat);
// 打N页
int pageCount = ui->pageCountLineEdit->text().toInt();
for (int i = 1; i <= pageCount; ++i) {
// 如果只打印一份,即只打印店联
if (1 == pageCount) {
if (Receive_Finery == operationType) {
doc.setHtml(htmlString.arg(tr("店联")));
} else {
doc.setHtml(htmlString.arg(tr("客户联")));
}
} else {
if (i % 2 != 0) {
doc.setHtml(htmlString.arg(tr("客户联")));
} else {
doc.setHtml(htmlString.arg(tr("店联")));
}
}
doc.print(&p);
if (i < pageCount) {
p.newPage();
}
}
}
QString htmlString = QString("<html>") + str1 + str2 +str3 + finerysInfo + str5 + str6
+ QString("<br>%1<br>%2").arg(separateString) + QString("</html>");
printString(htmlString);
accept();
}
void PrintDialog::printString(const QString &htmlString) {
qDebug() << htmlString;
QPrinter p;
QTextDocument doc;
//doc.setHtml(htmlString);
QFont font = doc.defaultFont();
font.setBold(true);
font.setPointSize(font.pointSize() + 1);
doc.setDefaultFont(font);
QSizeF s = QSizeF(p.logicalDpiX() * (58 / 25.4), p.logicalDpiY() * (297 / 25.4));
doc.setPageSize(s);
p.setOutputFormat(QPrinter::NativeFormat);
// 打N页
int pageCount = ui->pageCountLineEdit->text().toInt();
for (int i = 1; i <= pageCount; ++i) {
// 如果只打印一份,即只打印店联
if (1 == pageCount) {
if (Receive_Finery == operationType) {
doc.setHtml(htmlString.arg(tr("店联")));
} else {
doc.setHtml(htmlString.arg(tr("客户联")));
}
} else {
if (i % 2 != 0) {
doc.setHtml(htmlString.arg(tr("客户联")));
} else {
doc.setHtml(htmlString.arg(tr("店联")));
}
}
doc.print(&p);
if (i < pageCount) {
p.newPage();
}
}
}
相关文章推荐
- Qt小票打印之网口程序
- 基于Qt的收银点餐系统之小票打印(一)
- 基于Qt的收银点餐系统之小票打印(二)
- Qt进行小票打印
- Qt、C++小票打印----网口
- qt实现小票打印
- QT 小票打印
- Qt、C++小票打印----端口(com)、并口(lpt)----并介绍了qt中qwebview的使用及js通信
- C#并口热敏小票打印机打印位图
- (商用版)对对机如何打印自动饿了么外卖订单小票教程
- 微信支付小票打印机如何打印收付款二维码(教程)
- Qt 控件的父级并打印对象名称!
- qt 打印信息显示行号
- Qt 文本编辑器之打印文档
- Qt 打印失败变成生成pdf QPrinterInfo::availablePrinters()获取不到打印机信息
- Qt 使用statusBar来显示程序打印信息
- 打印小票 由两个文章合并而来
- EPSON小票打印机 LPT方式打印不起作用
- 【Qt 5.3.2】Qt局域网收银软件(Qt+MySQL+小票打印机(58mm)+普通打印机)
- RDLC不预览打印——超市小票