vs+qt5.0 使用poppler-qt5 操作库获取pdf所有文本输出到txt操作

先获取poppler库,编译出lib与dll,配置好依赖环境,获取某页所有文本:

QList<QString> PDFkitEngine::GetText(int nPageNum)

{

QList<QString> lstText;

Poppler::Page* pPage = NULL;

pPage = GetPage(nPageNum);

if (pPage == nullptr)

{

return lstText;

}

QList<Poppler::TextBox* > lstTexts = pPage->textList();

if (lstTexts.count() == 0)

{

return lstText;

}

for (int i = 0;i < lstTexts.count();i++)

{

lstText.append(lstTexts.at(i)->text());

}

return lstText;

}

输出到txt文本:

void PDFkitEngine::outputText(const QString& strfileName, QList<QString>& vecText)

{

QFile file(strfileName);

if (!file.open(QIODevice::WriteOnly | QIODevice::Text | QIODevice::Append))

{

return;

}

QTextStream textStream(&file);

for (auto& _info : vecText)

{

textStream << _info << endl;

}

file.close();

}

测试效果是可以将pdf文本全部读出来,并且成功的输出到文本文件,但是有点瑕疵是,pdf读出来的一行数据内容可能会分成2行或者多行,但是文本获取没有问题

相关推荐
Source.Liu9 分钟前
【LibreCAD】 RS_Units 类完整解析
c++·qt·rust
偶像你挑的噻1 小时前
2.Qt-基础核心以及信号与槽
开发语言·qt
拓端研究室5 小时前
2025医疗健康行业革新报告:AI赋能、国际化|附170+份报告PDF、数据、可视化模板汇总下载
人工智能·pdf
爱吃巧克力的程序媛6 小时前
Qt 异步编程---概述
开发语言·qt
天涯路s7 小时前
qt怎么自定义日志
开发语言·qt
四维碎片9 小时前
【Qt】QTimer 学习笔记总结
笔记·qt·学习
小年糕是糕手9 小时前
【C++】类和对象(六) -- 友元、内部类、匿名对象、对象拷贝时的编译器优化
开发语言·c++·算法·pdf·github·排序算法
qq_4017004111 小时前
理解与优化Qt信号槽机制提高性能优化
qt
蚂蚁取经11 小时前
Qt C++ 小部件 QCustomPlot 的使用
c++·qt·信息可视化
龚建波11 小时前
《QDebug 2025年11月》
qt