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

相关推荐
大神的风范28 分钟前
QT部署YOLO11实时检测
驱动开发·深度学习·qt·目标检测·计算机视觉
cpp_learner34 分钟前
Linux ARM架构 使用 linuxdeployqt 打包QT程序
qt
泉飒1 小时前
C2001: 常量中有换行符-QT解决办法-逆向思路
开发语言·qt
SQVIoMPLe2 小时前
python-langchain框架(3-7-提取pdf中的图片 )
python·langchain·pdf
泉飒3 小时前
QT的报错
qt
byxdaz3 小时前
QT中USB入门(QtUsb)
qt·qtusb
森G3 小时前
48、柱状图---------QChart
c++·qt
Highcharts.js3 小时前
Highcharts客户端导出使用文档说明|图表导出模块讲解
前端·javascript·pdf·highcharts·图表导出
Larry_Yanan5 小时前
Qt+OpenCV(一)环境搭建
开发语言·c++·qt·opencv·学习
女王大人万岁5 小时前
Golang实战gRPC与Protobuf:从入门到进阶
服务器·开发语言·后端·qt·golang