Qt之热敏打印机设置
1、生成PDF文件
void MainWindow::createPdf()
{
QString fileName = QFileDialog::getSaveFileName(this, tr("导出PDF文件"), QString(), "*.pdf");
if (!fileName.isEmpty()) {
// 如果文件后缀为空,则默认使用.pdf
if (QFileInfo(fileName).suffix().isEmpty())
fileName.append(".pdf");
QPrinter printer;
// 指定输出格式为pdf
printer.setOutputFormat(QPrinter::PdfFormat);
printer.setOutputFileName(fileName);
ui->textEdit->print(&printer);
}
}
2、页面设置
void MainWindow::setUpPage()
{
QPrinter printer;
QPageSetupDialog pageSetUpdlg(&printer, this);
if (pageSetUpdlg.exec() == QDialog::Accepted)
{
printer.setOrientation(QPrinter::Landscape);
}
else
{
printer.setOrientation(QPrinter::Portrait);
}
}
3、打印预览
void MainWindow::doPrintPreview()
{
QPrinter printer;
// 创建打印预览对话框
QPrintPreviewDialog preview(&printer, this);
// 当要生成预览页面时,发射paintRequested()信号
connect(&preview, SIGNAL(paintRequested(QPrinter*)),
this,SLOT(printPreview(QPrinter*)));
preview.exec();
}
4、设置打印
void MainWindow::doPrint()
{
// 创建打印机对象
QPrinter printer;
// 创建打印对话框
QString printerName = printer.printerName();
if( printerName.size() == 0)
return;
QPrintDialog dlg(&printer, this);
//如果编辑器中有选中区域,则打印选中区域
if (ui->textEdit->textCursor().hasSelection())
dlg.addEnabledOption(QAbstractPrintDialog::PrintSelection);
// 如果在对话框中按下了打印按钮,则执行打印操作
if (dlg.exec() == QDialog::Accepted)
{
//ui->textEdit->print(&printer);
// print the existing document by absoult path
//printFile("D:/1.doc");
QTextDocument doc;
//doc.setHtml(htmlString);
QFont font = doc.defaultFont();
font.setBold(true);
font.setPointSize(10);
doc.setDefaultFont(font);
QSizeF s = QSizeF(printer.logicalDpiX() * (58 / 25.4), printer.logicalDpiY() * (297 / 25.4));
//doc.setPageSize(s);
// printer.setPageSize(s);
printer.setOutputFormat(QPrinter::NativeFormat);
doc.setHtml("店联");
doc.print(&printer);
}
}
5、设置打印字体大小,内容
void MainWindow::PrintBtn()
{
QPrinter printer;
QTextDocument doc;
QFont font = doc.defaultFont();
font.setBold(true);
font.setPointSize(5); //设置字体大小
doc.setDefaultFont(font);
QSizeF s = QSizeF(printer.logicalDpiX() * (80/70), //58 / 25.4
printer.logicalDpiY() * (200/2));
doc.setPageSize(s);
// printer.setPageSize(s);
printer.setOutputFormat(QPrinter::NativeFormat);
doc.setPlainText(QDateTime::currentDateTime().toString("yyyy-MM-dd hh:mm:ss"));
doc.print(&printer);
doc.setPlainText("yuiftyi\n打印测试\n\n打印结束!");
doc.print(&printer);
}
Qt之热敏打印机设置相关推荐
- Qt for Mac 设置软件开机自启动
在Qt程序中设置Mac软件的开机自启动,通过调用object-c代码来实现. 目前只测试过在非沙盒的环境下设置开机自启动,沙盒环境下没有测试过(设置方式不同,会比较复杂) 新建类,定义接口 void ...
- qt 设置串口起始位_【IT专家】Qt:如何设置主窗口的初始位置?
本文由我司收集整编,推荐下载,如有疑问,请与我司联系 Qt :如何设置主窗口的初始位置? Qt :如何设置主窗口的初始位置? [ 英 ]Qt: how to set main window's ini ...
- Qt利用setStyleSheet设置样式
Qt利用setStyleSheet设置样式 Qt中设置按钮或QWidget的外观是,可以使用QT Style Sheets来进行设置,非常方便. setStyleSheet("font: b ...
- Qt之QWidget设置窗口背景图片的几种方法
Qt之QWidget设置窗口背景图片的几种方法 几种方法如下: 1.使用调色板QPalette来设置图片 QPalette pal =this->palette(); pal.setBrush( ...
- qt designer stylesheet 设置字体加粗无效
估计是qt designer的bug,qt designer stylesheet 设置字体加粗无效. 解决办法是在右侧的属性窗口对字体进行加粗设置,注意需要将stylesheet里面对字体的加粗设置 ...
- QT QTabWidget Tabar设置图标
QT QTabWidget Tabar设置图标的三种方式;多个tab标签设置图标 一.通过setStyleSheet样式表设置Tabar图标 二.通过setTabIcon函数设置图标 三.通过修改.u ...
- QT按钮被设置未checkable之后被选中Checked时很多网格小白点的问题及解决方法
QT按钮被设置未checkable之后被选中Checked时很多网格小白点的问题及解决方法 qt的按钮被设置为checkable之后,同时给按钮设置样式表之后,如果按钮被checked,即使设置了按下 ...
- Qt之布局设置setLayout详解-源码剖析(下)
一.简述 大家好,我是前行中的小猪,今天呢给大家继续上一篇Qt之布局设置setLayout详解(上)之后的内容,再给大家进行一下拓展. 1.1 setLayout源码剖析 上篇我们说到如何清空部件上的 ...
- TI PDK3.0 qt 交叉编译环境设置
上午剑锋给的方法,成功在qtcreator上面加入TI官方的qmake以及他的交叉编译器. 1. 步骤如下:1. 我假设TI PDK3.0 安装目录为顶层目录.2. 进入linux-devkit 目录 ...
最新文章
- painticon java_新人,关于java的 paintIcon()方法
- 表面上在帮女朋友拍照,其实镜头瞄准的是......
- php 501解决办法,PHP 使用错误处理解析
- 【干货】华为组织成长的动力机制.pdf(附下载链接)
- Android Studio实现一个智能聊天机器人
- 四级数据中心认证机构更新标准全新上线
- mysql中加号变成空格了_从数据库中读取字符串时其中的空格变成加号
- simotion基本功能手册_深入浅出西门子运动控制器——SIMOTION实用手册(1CD)
- excel两个表格数据对比_Excel中两个表格对比,找出不同数据
- 机器学习sklearn基础(1):多元逻辑回归分类器 (pcolormesh说明及绘图)
- graphpad做柱状图,GraphPad软件做图表,就这么简单!
- 【XJTUSE计算机图形学】第三章 几何造型技术(3)——B样条曲线与曲面
- Word中如何制作红头文件?学会技巧提高工作效率
- java 拼音首字母_java获取中文拼音首字母的实例
- EdgeX(1)研究 开源边缘计算框架 EdgeX Foundry
- 隐马尔科夫模型java实现
- 线束音视频传输连接器FAKRA与HSD区别?
- 价值链-名词解释01
- SiTime硅晶振和石英晶振的冲击和振动性能比较
- office 2016 安装