【发布时间】:2020-03-11 08:56:49
【问题描述】:
我正在尝试使用 PDFBox 解析期刊页面。这是我正在使用的代码的 sn-p:
try (PDDocument document = PDDocument.load(new File("myfile.pdf"))) {
if (!document.isEncrypted()) {
PDFTextStripperByArea stripper = new PDFTextStripperByArea();
stripper.setSortByPosition(true);
PDFTextStripper tStripper = new PDFTextStripper();
tStripper.setParagraphEnd("\n");
String pdfFileInText = tStripper.getText(document);
String output = "";
String lines[] = pdfFileInText.split("\\r?\\n");
for (String line : lines) {
output += line + "\n";
}
}
}
问题是,即使我得到的段落没问题,它们的显示顺序完全是随机的。我需要以自然顺序(从上到下,从左到右)获取段落,但 PDFBox 似乎无缘无故地从页面的一侧跳到另一侧。我的原始 PDF 文件还包含随机位置的图像,我认为这可能与此有关。
以下是未按顺序阅读的 PDF 示例:
这就是我从那个样本中得到的:
GALIZA>2-3
Analizamos os programas de PSOE, PP,
En Común-Unidas Podemos e do BNG
> Na Galiza hai case 15 librarías por cada
100.000 habitantes
> Só o 26% das persoas propietarias son
mulleres, fronte ao 74% de homes
A media de
traballadoras dunha
libraría e de 3,5
TRABALLO>15
Día das Librarías
As oito
medidas
electorais
para Galiza
有没有办法让段落按自然顺序排列?
【问题讨论】:
-
不看pdf就很难评论。
-
刚刚添加了一个示例
-
“但 PDFBox 似乎无缘无故地从页面的一侧跳转到另一侧” - 原因是您的特定 PDF 中的文本绘制说明出现在那个奇怪的顺序,PDFBox 只是反映给你...
-
我就是这么想的,谢谢你的回答。我得另辟蹊径