公司 · 新闻
网站建设 读取pdf文字
2021-09-02来源:越跃科技

pdftotext —— Linux中将PDF文件转化为Text

安装 pdftotext 到 CentOS:

yum install poppler-utils

将pdf转化为text: 将php-manual.pdf 转化为 php-manual.txt:

 pdftotext php-manual.pdf php-manual.txt

只转化前 5 页和后 10 页:

 pdftotext -f 5 -l 10 php-manual.pdf php-manual.txt

转化加密过的pdf文件:

 pdftotext -upw 'password' php-manual.pdf php-manual.txt

读取pdf内容

 pdftotext 1.pdf 

读取pdf字数

pdftotext 1.pdf - | wc -w 

命令后面加 - 2>&1 输出报错信息

 pdftotext 1.pdf - 2>&1

php 调用 pdftotext

shell_exec('pdftotext 1.pdf - | wc -w ');

在命令行中输入
pdftotext [选项] [文件PDF文件] [文本]

描述
pdftotext将PDF转换为纯文本。
pdftotext读取PDF文件,将PDF文件转换为纯文本文件。如果对文本文件没有很特别的要求,那么pdftotext可以将PDF转换为纯文本文件。得到的文本文件是标准输出。
选项
下面许多选项可以在配置文件中配置。下面列出了对应命令行选项的详细介绍。
-f 数字
设置开始转换的页数
-l 数字
设置结束转换的页数
-layout
保持原始布局(尽最大的可能)。默认是格式化了原本的布局(断字,列格式等)同时按顺序给出文本。如果 -fixed选项被使用那么线内的字符间距将由指定的字符间距来确定。
-table
类似于原始布局模式,但优化表格数据,以保持行和列目标的对齐(将额外插入空格)。如果 -fixed选项被使用那么线内的字符间距将由指定的字符间距来确定。
-lineprinter
行打印模式,使用了一个严格的固定字符间距和固定高度的布局。就是说文档内容被分割到不同的格子中。如果网格间距小于实际字符的大小,结果将有额外空格。如果网格间距大于实际字符的大小,结果将丢失空格。格子可以使用-fixed和-linespacing选项。如果这两个选项都没有使用,那么pdftotext将尝试给出一个合适的间距。
-raw
文本文件将保持内容流的顺序。这取决与pdf是如何生成的。这个选项可能有用可能没用
-fixed 数字
指定字符间距(字符宽度),在原始布局,表格和行打印模式中使用。这是忽略在所有其他模式。
-linespacing 数字
指定行空间,在原始布局,表格和行打印模式中使用。这是忽略在所有其他模式。
-clip
文本创建布局时会自动换行。这有助于表格中内联模式的文本自动换行。
-enc 编码格式
设置输出时的编码。这编码格式必须用unicode图集的命令行(详见 xpdfrc(5))编码名称是区分大小写的。默认为“latin1”
[配置文件: textEncoding]
-eol unix | dos | mac
设置最后文本输出格式。
[配置文件: textEOL]
-nopgbrk
不要插入页面之间的中断(表单中的字符)。
[配置文件: textPageBreaks]
-opw 密码
指定PDF文件所有者密码。提供这将绕过所有的安全限制。
-upw 密码
指定PDF文件用户密码。
-q
不输出任何错误信息。
[配置文件: errQuiet]
-cfg 配置文件
指定配置文件。
-v
输出版权和版本信息。
-h
输出有用的信息。(-help 和–help是相当的)

BUGS
一些PDF文件内容字体的编码不明晰,所以无法从中读取信息到文本文件。

出错代码
Xpdf出错是代码的含义
0 正常
1 打开PDF出错
2 打开输出文件出错
3 PDF权限相关错误
99 其它错误


联系我们免费获取专属《策划方案》及报价!
  • 网站建设
  • 微信公众号开发
  • 功能网站开发
  • 3D视觉动画
  • 平面设计
  • 营销推广
  • 单位名称

  • 电话*

  • 需求

多一份参考 总有益处
从需求的提炼,到竞品的分析再到方案的策划
为您定制出一套企业本身的专属品牌策划方案
400-9696-213
134-888-19185
北京网站建设-企业网站制作-高端网站设计,专业网站开发服务商
警告弹窗