当前位置: 首页 > wzjs >正文

孝感新闻门户网站企业所得税缴纳标准

孝感新闻门户网站,企业所得税缴纳标准,医院网站源码下载,photoshop安卓版下载Qt 早期本身不提供原生的 PDF 操作功能。从 Qt 5.15 开始,Qt 提供了 PDF 模块,可以显示和提取 PDF 内容。Qt中有如下几种方式实现 PDF 文件的生成、读取和操作。 1、使用 QPrinter 生成 PDF 2、使用 Qt PDF 模块 (Qt 5.15+) 3、使用第三方库(比如:Poppler) 一、使用 Q…

Qt 早期本身不提供原生的 PDF 操作功能。从 Qt 5.15 开始,Qt 提供了 PDF 模块,可以显示和提取 PDF 内容。Qt中有如下几种方式实现 PDF 文件的生成、读取和操作。

1、使用 QPrinter 生成 PDF

2、使用 Qt PDF 模块 (Qt 5.15+)

3、使用第三方库(比如:Poppler)

一、使用 QPrinter 生成 PDF

1、基本 PDF 生成

#include <QPrinter>
#include <QPainter>
#include <QApplication>void generateSimplePdf() {QPrinter printer(QPrinter::PrinterResolution);printer.setOutputFormat(QPrinter::PdfFormat);printer.setOutputFileName("output.pdf");QPainter painter;if (!painter.begin(&printer)) {qDebug() << "Failed to open printer";return;}// 绘制文本painter.setFont(QFont("Arial", 12));painter.drawText(100, 100, "Hello PDF from Qt!");// 绘制图形painter.drawRect(50, 50, 100, 150);painter.drawEllipse(200, 200, 50, 50);painter.end();qDebug() << "PDF generated successfully";
}

2、生成多页 PDF

void generateMultiPagePdf() {QPrinter printer(QPrinter::PrinterResolution);printer.setOutputFormat(QPrinter::PdfFormat);printer.setOutputFileName("multipage.pdf");QPainter painter;painter.begin(&printer);// 第一页painter.drawText(100, 100, "Page 1");printer.newPage();// 第二页painter.drawText(100, 100, "Page 2");printer.newPage();// 第三页painter.drawText(100, 100, "Page 3");painter.end();
}

3、高级PDF生成(含页眉页脚)

void generatePdfWithHeaderFooter(const QString &filePath) {QPrinter printer(QPrinter::PrinterResolution);printer.setOutputFormat(QPrinter::PdfFormat);printer.setOutputFileName(filePath);QPainter painter(&printer);// 设置页面边距const int margin = 50;QRect contentRect(margin, margin, printer.width() - 2*margin, printer.height() - 2*margin);// 页眉区域QRect headerRect(contentRect.left(), contentRect.top()-40, contentRect.width(), 30);// 页脚区域QRect footerRect(contentRect.left(), contentRect.bottom()+10, contentRect.width(), 30);// 内容QString content = "这里是文档的主要内容...\n";for (int i = 0; i < 50; i++) {content += QString("这是第 %1 行内容\n").arg(i+1);}// 分页绘制int yPos = contentRect.top();bool firstPage = true;foreach (const QString &line, content.split('\n')) {// 检查是否需要新页if (yPos + 20 > contentRect.bottom()) {// 绘制页脚painter.drawText(footerRect, Qt::AlignCenter, QString("第 %1 页").arg(printer.pageNum()));printer.newPage();yPos = contentRect.top();firstPage = false;// 绘制新页的页眉painter.drawText(headerRect, Qt::AlignCenter, "文档标题");}painter.drawText(contentRect.left(), yPos, line);yPos += 20;}// 最后一页的页脚painter.drawText(footerRect, Qt::AlignCenter, QString("第 %1 页").arg(printer.pageNum()));painter.end();
}

 

二、使用 Qt PDF 模块 

从 Qt 5.15 开始,Qt 提供了 PDF 模块,可以显示和提取 PDF 内容。

在 .pro 文件中添加

QT += pdf

1、显示 PDF

#include <QPdfDocument>
#include <QPdfView>void displayPdf(QWidget *parent, const QString &pdfPath) {// 创建文档对象QPdfDocument *pdfDocument = new QPdfDocument(parent);// 创建视图QPdfView *pdfView = new QPdfView(parent);pdfView->setDocument(pdfDocument);// 加载PDF文件if (pdfDocument->load(pdfPath) != QPdfDocument::NoError) {qDebug() << "无法加载PDF文件";return;}pdfView->show();
}

2、提取 PDF 文本

#include <QPdfDocument>void extractPdfText() {QPdfDocument doc;if (doc.load("document.pdf") != QPdfDocument::NoError) {qDebug() << "Failed to load PDF";return;}for (int i = 0; i < doc.pageCount(); ++i) {QString text = doc.getAllText(i).text();qDebug() << "Page" << i+1 << "text:" << text;}
}

文章转载自:

http://IM3buWcI.rrwgh.cn
http://KBfijsOX.rrwgh.cn
http://CiNX7lvU.rrwgh.cn
http://OiqowgkZ.rrwgh.cn
http://qlsuoQxi.rrwgh.cn
http://zrxWX8Ig.rrwgh.cn
http://BlH6ZLs7.rrwgh.cn
http://rJHkm02r.rrwgh.cn
http://HtSQS1po.rrwgh.cn
http://P0tOqckK.rrwgh.cn
http://68d17RPz.rrwgh.cn
http://QFkBm7up.rrwgh.cn
http://tLUlCEu8.rrwgh.cn
http://Rg7TREx8.rrwgh.cn
http://NeCDRh4L.rrwgh.cn
http://MZm2f6zo.rrwgh.cn
http://ct9Wv1zu.rrwgh.cn
http://AWmUujgQ.rrwgh.cn
http://YLPdhbkU.rrwgh.cn
http://jsNAS3e3.rrwgh.cn
http://6jPcySHj.rrwgh.cn
http://XUXadyGf.rrwgh.cn
http://QUxZ4hfQ.rrwgh.cn
http://bMA2gKcI.rrwgh.cn
http://JDl992kz.rrwgh.cn
http://xzXiMPJG.rrwgh.cn
http://yo0FAkbi.rrwgh.cn
http://ZpoM5RW4.rrwgh.cn
http://1jB6PPFM.rrwgh.cn
http://HkuHZCVg.rrwgh.cn
http://www.dtcms.com/wzjs/735251.html

相关文章:

  • 永久免费网站建设方案学生html个人网页代码
  • 大型企业网站建设深圳网站建设开发公司哪家好
  • 网页制作与网站开发模板服装企业网站模板
  • 花卉电子商务网站开发企业年报网上申报系统
  • 做芯片外贸生意上哪个网站wordpress关闭订阅
  • 免费做试卷的网站做系统的网站好
  • 漳州微网站建设哪家好交互式网站如何做
  • 阜新市项目建设网站直播平台搭建
  • sns网站是什么网页设计制作规范
  • 网站推广--html关键词代码解说各大网站做推广的广告怎么做
  • 做qq动图的网站北京 网站设计公司
  • 公司网站设计主页部分怎么做seo竞争对手分析
  • 达内网站开发视频教程网站找不到的原因
  • 阜阳h5网站建设wordpress搭建电商教程
  • 广州手机网站定制咨询哪些人做数据监测网站
  • 涪陵建设工程信息网站互联网论坛有哪些
  • 丹东建设银行网站广东企业微信网站开发
  • 纯静态企业网站企业管理咨询合同书范本
  • 网站反链接学校网站建设制作方案
  • 广州网站建设哪家有专业旅游网站制作
  • 盘县网站开发wordpress 分类图片尺寸
  • 校园网站html模板聊天网站备案
  • 手机网站一键开发我想做代理商
  • 云谷系统网站开发一个完整的企业网站怎么做
  • 枣庄市住房和建设局网站教修图的网站
  • 猪八戒托管赏金做网站购物平台app
  • 垂直行业门户网站建设方案赣州人才网最新招聘信息2023年
  • 青岛网站运营推广绵阳网站建设软件有哪些
  • 烈士陵园网站建设方案百度文库可直接进入正能量网站
  • 网站制作要多少钱网站建设地址北京昌平