读PDF文件内容

Posted on 2007-09-01 13:49 angel 阅读(389) 评论(0)  编辑  收藏

首先得下载xpdf-3.00pl3-win32.zip和xpdf-chinese-simplified.tar.gz二个包

配置:
1。xpdf-3.00pl3-win32.zip写压后改名为xpdf
2。修改xpdfrc文件
      (1)在文件最下面加入
        

 1#----- begin Chinese Simplified support package (2004-jul-27)
 2
 3cidToUnicode     Adobe-GB1  C:/xpdf/chinese-simplified/Adobe-GB1.cidToUnicode
 4
 5unicodeMap ISO-2022-CN     C:/PublicInstall/xpdf/chinese-simplified/ISO-2022-CN.unicodeMap
 6
 7unicodeMap EUC-CN       C:/xpdf/chinese-simplified/EUC-CN.unicodeMap
 8
 9unicodeMap GBK      C:/xpdf/chinese-simplified/GBK.unicodeMap
10
11cMapDir      Adobe-GB1  C:/xpdf/chinese-simplified/CMap
12
13toUnicodeDir                 C:/xpdf/chinese-simplified/CMap
14
15#displayCIDFontTT   Adobe-GB1  /usr/./gkai00mp.ttf
16
17#----- end Chinese Simplified support package


(2)另外,配置文件中原先没有加上一个“textPageBreaks”控制。为了避免这个分页符号,我们需要在xpdfrc文件“text output control”下面加上这么一段话:

# If set to "yes", text extraction will insert page

# breaks (form feed characters) between pages. This

# defaults to "yes".

textPageBreaks      no

设置textPageBreaksno的意思是:在PDF文档的两页之间不加入分页符号。

之所以这样,是因为这个符号有时候会引起SAX解析XML上的困难。


读PDF文件

1String PATH_TO_XPDF="C:\\xpdf\\pdftotext.exe";
2                 String[] cmd = new String[] { PATH_TO_XPDF, "-enc""UTF-8""-q", 文件路径, "-"};
3                  Process p = Runtime.getRuntime().exec(cmd);
4                  BufferedInputStream iss = new BufferedInputStream(p.getInputStream());
5                  str = new ReadFileUtil(comm).readPDF(iss);


 


只有注册用户登录后才能发表评论。


网站导航:
 

Copyright © angel