这可能看起来是一个老问题,但是我花了半个小时搜索了所有的SO后才找到一个详尽的答案.
我正在使用PDFBox,我想从PDF文件中提取所有文本以及每个字符串的坐标.我正在使用他们的PrintTextLocations示例(http://pdfbox.apache.org/apidocs/org/apache/pdfbox/examples/util/PrintTextLocations.html),但是我正在使用的那种pdf(电子票证)程序无法识别字符串,分别打印每个字符.输出是一个字符串列表(每个字符串代表一个TextPosition对象),如下所示:
String[414.93896,637.2442 fs=1.0 xscale=8.0 height=4.94 space=2.2240002 width=4.0] s
String[418.93896,637.2442 fs=1.0 xscale=8.0 height=4.94 space=2.2240002 width=4.447998] a
String[423.38696,637.2442 fs=1.0 xscale=8.0 height=4.94 space=2.2240002 width=1.776001] l
String[425.16296,637.2442 fs=1.0 xscale=8.0 height=4.94 space=2.2240002 width=4.447998] e
虽然我希望程序将字符串“sale”识别为一个独特的TextPosition并给我它的位置.
我还尝试使用setSpacingTolerance()和setAverageCharacterTolerance()PDFTextStripper方法,在标准值之上和之下设置不同的值(FYI分别为0.5和0.3),但输出完全没有变化.我哪里错了?提前致谢.