PHP将PDF转为TXT文件,pdf转中文txt,pdf中文txt
pdf转中文txt,pdf中文txt
最近项目需要实现根据关键字搜索pdf内容,实现思路就是提取pdf文本,然后进行索引。
工具上选择:
IText 4.16之后采用agpl License,不能用作商用,而且转换中文会有乱码问题,
pdfsharp 采用MIT License,权限上没有问题,但是转换中文也会有乱码,
最后决定采用xpdf.
官网地址:https://www.xpdfreader.com/download.html
需要下载对应的xpdf包,本人采用的windows x64 版本
此外还要下载中文字符集包:简体中文字符集
包准备工作如下:
将xpdf文件夹copy到项目合适位置实现功能,这里只演示单个文件的转换工作,本人是将xpdf访问asp.mvc启动工程的根目录下进行测试的(文件路径有空格一定要加双引号)
1 public ActionResult Search(stringkeyword)2 {3 var rooPath = Server.MapPath("~/");4 ProcessStartInfo startInfo = newProcessStartInfo5 {6 UseShellExecute = false,7 WindowStyle =ProcessWindowStyle.Normal,8 RedirectStandardInput = true,9 RedirectStandardOutput = true,10 RedirectStandardError = true,11 CreateNoWindow = false,12 WorkingDirectory = string.Format("{0}xpdf", rooPath),13 //FileName = string.Format("{0}xpdf\\pdftotext.exe", rooPath)
14 FileName ="cmd.exe"
15 };16 //pdftotext.exe -layout -enc GBK 你不知道的JavaScript(下卷).pdf
17 var arguments = string.Format("/C pdftotext.exe -layout -enc GBK \"{1}\" \"{2}\"", rooPath, rooPath + @"xpdf\1.pdf", rooPath + @"xpdf\JavaScript.txt");18 //var arguments = string.Format(@"{0}1.pdf", rooPath);
19 startInfo.Arguments =arguments;20 var ss = string.Empty;21
22 using (Process process =Process.Start(startInfo))23 {24
25 process.OutputDataReceived += new DataReceivedEventHandler((object sender, DataReceivedEventArgs e) =>
26 {27 ss +=e.Data;28 });29 process.BeginOutputReadLine();30 using (var error =process.StandardError)31 {32 ss +=error.ReadToEnd();33 }34 //等待退出
35 process.WaitForExit();36 }37
38 returnJson(ss, JsonRequestBehavior.AllowGet);39 }
error 可能会有报字体的错误,但不影响转换,可以忽略:
Syntax Error: Unknown character collection 'DYNA-HK1'
Syntax Error: Unknown character collection 'DYNA-HK1'
下面再附上工程目录:
http://www.dengb.com/PHPjc/1345018.htmlwww.dengb.comtruehttp://www.dengb.com/PHPjc/1345018.htmlTechArticlepdf转中文txt,pdf中文txt 最近项目需要实现根据关键字搜索pdf内容,实现思路就是提取pdf文本,然后进行索引。 工具上选择: IText 4.16之后采...
PHP将PDF转为TXT文件,pdf转中文txt,pdf中文txt相关推荐
- java+txt+词语+次数_Java练习2--读取txt文件统计考勤次数并写入一个txt文件中
Java练习2--读取txt文件统计考勤次数并写入一个txt文件中 Java练习2--读取txt文件统计考勤次数并写入一个txt文件中 面向对象的小练习: 文件attendance.txt中的数据为本 ...
- matlab通过变量调用txt文件路径,MATLAB使用load函数读取txt文档
MATLAB在数据处理方面应用非常广泛.在众多的专业领域里,把各种手段获取的数据存入txt文档中非常常见.如果txt文件中数据为矩阵形式,通常可以采用简单的load命令来读取数据,然后在MATLAB中 ...
- python将txt文件按行数分成多个txt文件
当一个txt文件太大了打不开,想到的这个方法,分成多个文件方便打开 如果文档中有中文打开时,加上 encoding='UTF-8' 具体见代码块中注释 代码运行工具:jupyter noteboo ...
- java pdf 转txt文件怎么打开_使用iText将TXT文件转换为PDF(保留格式)
我正在尝试使用iText库将.txt文件转换为.pdf文件.我面临的问题如下: 我在txt文件中有清晰的格式,与此类似: TEXT ******************* Other text her ...
- matlab中将数据保存为txt文件_matlab中将数据输出保存为txt格式文件的方式
将matlab中数据输出保存为txt 格式总结网上各大论坛,主要有三种 方法. 第一种方法 :save(最简单基本 具体的命令是:用save*.txt -ascii 为函数*.txt 为文件名,该文件 ...
- python怎么读取txt文件数据保存数组中-python将txt等文件中的数据读为numpy数组的方法...
实际中,很多数据都是存为txt文件.csv文件等,但是在程序中处理的时候numpy数组或列表是最方便的.本文简单介绍读入txt文件以及将之转化为numpy数组或列表的方法. 1 将txt文件读为lis ...
- python如何导入txt文件-python如何将数据写入本地txt文本文件
一.读写txt文件 1.打开txt文件file_handle=open('1.txt',mode='w') 上述函数参数有(1.文件名,mode模式) mode模式有以下几种:#w 只能操作写入 r ...
- android编程读取sd卡txt文件,如何读取SD卡中的txt文件?
我有一个自定义ListView,代码如下.而不是写作: "http://yoursite.com/image1.png","http://yoursite.com/ima ...
- js读取服务器txt文件,ZK中使用JS读取客户端txt文件内容问题
最近写一个需求时遇到一个问题,用户需要通过点击一个按钮直接读取他自己电脑上D盘的一个txt文件内容显示到页面,因为项目现在是用ZK写的.我对于ZK也是刚刚了解不就,很多都还不是很熟.起初我是想用io流 ...
- matlab读txt文件不完整,求助Matlab批量读取TXT文件出错
我用dlmread函数批量读取txt文件中的一个数据,但运行结果1.txt文件中只有一个数据0,调试时报错:错误使用 dlmread (line 147) 文件结尾不支持空的格式字符串,文件有128列 ...
最新文章
- ethercard php_使用Arduino和ENC28J60以太网LAN网络模块发送HTTP POST请求
- 外包 银行数字签名U盘的用法
- 命令行编译 WRK ,windbg 调试
- Adobe illustrator 调整画板大小 - 连载17
- 专业英语笔记:Install and Use Python
- Windows Gadget 制作二
- 罗森伯格高端布线助力昆山基地
- HTML超好看的个人主页源码+支持响应式
- 显示器的分辨率,字体像素
- windows统计各个目录的大小
- com lofter android,LOFTER
- 中国与印度软件工程师之比较
- 如何提取王者荣耀模型
- css文本行高是哪个属性_CSS样式----CSS属性:字体属性和文本属性(图文详解)...
- Linux查看MegaSAS raid卡缓存策略
- 述计算机标点用途,顿号(标点符号)_百度百科
- 插入 PNG 图片至 Excel
- Ubuntu下无线鼠标滚轮失效问题解决
- Dell r710安装esxi 黑群晖DS3615xs 解决无法分配ip、系统重复还原、端口无法更改的问题
- 用博奥如何导入单项工程电子表_博奥工程系列软件实操手册(第五册)