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行或者多行,但是文本获取没有问题

相关推荐
随手工具-Excel, pdf, SQL11 小时前
PDF拆分怎么操作?免费在线拆分PDF文件,无需安装任何软件
pdf
sycmancia14 小时前
Qt——另一种创建线程的方式
开发语言·qt
sycmancia15 小时前
Qt——多线程与界面组件的通信
开发语言·qt·算法
Quz16 小时前
QML 基础组件专栏目录(V1)
qt·qml
程序员老陆17 小时前
使用Qt+大华设备SDK预览大华摄像机视频
qt·算法·音视频·视频监控
郝学胜-神的一滴17 小时前
Qt 高级编程 035:无边框窗口阴影以及圆角双特效实现
开发语言·c++·qt·程序人生·用户界面
正在走向自律17 小时前
实战心得:利用PaddleOCR彻底解决大模型无法解析图片型PDF的问题
开发语言·pdf·视觉检测·paddleocr·视觉模型·离线ocr识别
AI原来如此18 小时前
零基础教程:50页PDF一键浓缩成1页摘要
人工智能·ai·pdf·大模型
186******2053118 小时前
PDF 转 Word 高效办公实战指南
pdf·word
随手工具-Excel, pdf, SQL18 小时前
PDF删除页面怎么操作?免费在线删除PDF指定页面,无需安装软件
pdf