gpt4 book ai didi

java - 如何在 PDFBOX 中用 URL 替换字符串?

转载 作者:行者123 更新时间:2023-12-01 09:43:41 26 4
gpt4 key购买 nike

我有一个带有字符串“Click Here”的文本 PDF。如何使用 PDFBox 将“单击此处”替换为 URL?在更新的(或新的)PDF 中替换后,又名“单击此处”将呈蓝色且可单击。

最佳答案

这来自AddAnnotations.java example从源码下载:

        PDBorderStyleDictionary borderULine = new PDBorderStyleDictionary();
borderULine.setStyle(PDBorderStyleDictionary.STYLE_UNDERLINE);
borderULine.setWidth(1);

PDAnnotationLink txtLink = new PDAnnotationLink();
txtLink.setBorderStyle(borderULine);

// Set the rectangle containing the link
textWidth = font.getStringWidth("Click here") / 1000 * xscale;
position = new PDRectangle();
position.setLowerLeftX(...);
position.setLowerLeftY(...);
position.setUpperRightX(...);
position.setUpperRightY(...);
txtLink.setRectangle(position);

// add an action
PDActionURI action = new PDActionURI();
action.setURI("http://pdfbox.apache.org");
txtLink.setAction(action);

annotations.add(txtLink);

显然,您需要知道“单击此处”的坐标以及 x 缩放因子和字体。在 PDF 中,(0,0) 是左下角。 1 单位 = 1/72 英寸。如果您自己生成文件,这是最简单的。如果它是现有文件,您必须使用 PDFDebugger 分析该文件或进行一些试验和错误。

关于java - 如何在 PDFBOX 中用 URL 替换字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38245371/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com