Java使用PDFBox

时间:2017-09-11 09:16:47

标签: java pdf pdfbox

我的程序将PDF文件中的位置链接到同一文件中的另一页。因此,您可以单击文件中已定义的位置,然后将其链接到另一个页面。

我使用PDRectangle来定义位置。不幸的是,矩形在文档中可见。我想创建没有可见边框的链接。

我的代码:

    PDActionGoTo action = new PDActionGoTo();
    action.setDestination(destination);

    PDAnnotationLink annotationLink = new PDAnnotationLink();
    annotationLink.setAction(action);

    PDRectangle position = new PDRectangle();
    position.setLowerLeftX(bookmarkLinkPositionEntry.getLowerLeftX());
    position.setLowerLeftY(bookmarkLinkPositionEntry.getLowerLeftY());
    position.setUpperRightX(bookmarkLinkPositionEntry.getUpperRightX());
    position.setUpperRightY(bookmarkLinkPositionEntry.getUpperRightY());

    annotationLink.setRectangle(position);

    destinationPDF.getPage(0).getAnnotations().add(annotationLink);

我尝试使用annotationLink.setHidden(true);annotationLink.setNoView(true);。文档只是说"设置隐藏的标志。"和"设置noView标志。"而且我不知道那里发生了什么。

如何更改矩形的可见性或完全删除边框?

1 个答案:

答案 0 :(得分:2)

您需要设置边框样式:

PDBorderStyleDictionary borderULine = new PDBorderStyleDictionary();
borderULine.setStyle(PDBorderStyleDictionary.STYLE_UNDERLINE);
borderULine.setWidth(0);
annotationLink.setBorderStyle(borderULine);

有关此主题的更多信息,请参阅源代码下载中的AddAnnotations.java example