pdfbox提取pdf文本,如果pdf中的字体本地没有,出现乱码
pdfbox提取pdf文本,如果pdf中的字体本地没有,出现乱码。
我写了个简单的代码,从pdf文件中取得 文本。传入不同的pdf文件发现有的可以正确显示,有的显示乱码,我用的是pdfbox 0.73版,而且所有的pdf都是英文的内容。
有的是同1个文件中一部分是乱码,一部分正常显示,所以我觉得是因为有些文本的字体本地没有,导致用getText()方法时,返回的是乱码。
代码大致如下:
PDDocument doc=PDDocumet.load( "c:\\test.pdf ");
PDFTextStripper stripper=new PDFTextStripper ();
String text=stripper.getText(doc);
运行后text变量中有可能包括一部分是正常显示的字符,一部分是乱码
请问这种现象是不是因为字体的原因?如果是,有没有办法在调用getText()之前,将pdf中本地没有的字体替换成本地有的,这样再调用getText()应该可以正确显示。
或者有其他方法解决????
------解决方案--------------------up
------解决方案--------------------字体的原因是出现方框,你这应该是编码格式不统一吧~~或者读出来的时候就已经是乱码了,转码看看
------解决方案--------------------和我联系easypdf@gmail.com
------解决方案--------------------关注一下
------解决方案--------------------关注一下
继续
------解决方案--------------------关注一下,
我试验了ExtractText程序
有Resource目录,可是没有作用
cmap下明明有Identity-V的,可总是认为unknown encoding
------解决方案--------------------出来转成char时,java 用Unicode 编码
看看Encoding是什么,不一定是Unicode编码啊