2

我需要用超链接替换现有 PDF 中的某些短语。例如,“使用 Java 语言的一个优势是人力的可用性”应该被处理为“使用Java 语言的一个优势是人力的可用性”。

为此,我创建了一个扩展PDFTextStripper的处理器类。通过覆盖processTextPosition,我能够获得所有字符的TextPosition。但我不知道如何从 TextPosition 中获取PDRectangle,这将帮助我构建PDAnnotationLink。我尝试了 x、y 属性的组合,但缺少位置。需要一些帮助。谢谢你。

桑杰

4

1 回答 1

1

我这样做了:

rectangle.setLowerLeftX(position.getTextPos().getXPosition());
rectangle.setLowerLeftY(position.getTextPos().getYPosition() - 2); // 2 as cushion
rectangle.setUpperRightX(rectangle.getLowerLeftX() + position.getWidthDirAdj());
rectangle.setUpperRightY(rectangle.getLowerLeftY() + 12 /*
    ideally it should be position.getHeightDir()?
    but my sample PDF yielded a negative figure for this */);
于 2012-07-18T10:58:58.820 回答