【问题标题】:Parsing a PDF file using IText to add hyper link in existing texts使用 IText 解析 PDF 文件以在现有文本中添加超链接
【发布时间】:2014-07-21 06:50:59
【问题描述】:

我知道 PDF 不用于编辑,但我需要解析 PDF 并对其进行修改以将所有文本元素转换为超链接。 有没有办法做到这一点?

非常感谢,

【问题讨论】:

  • 基本上,您必须应用文本提取,同时提取文本位置,而不仅仅是纯文本。在带有位置的提取文本中,您必须找到要创建超链接的所有文本。找到它们后,获取它们的位置并添加适当的注释以使它们超链接。可以在 iText 中使用 LocationTextExtractionStrategy 的变体和在覆盖 PDFTextStripper.writeString(String, List<TextPosition>) 的 PDFBox 中提取带有位置的文本。
  • 谢谢,我试试这个。
  • 成功了;再次感谢 mkl。
  • 我认为,您的第一条评论足以作为答案。可以将其提升为答案吗?
  • 好的,我已经回答了。

标签: java itext pdfbox pdf-parsing


【解决方案1】:

将文本元素转换为超链接涉及多个操作:

  1. 您必须应用文本提取,同时提取文本位置,而不仅仅是纯文本。

  2. 在提取的带有位置的文本中,您必须找到要创建超链接的所有文本部分。

  3. 找到它们后,获取它们的位置并添加适当的注释以使它们超链接。

可以在实现LocationTextExtractionStrategy 的变体的iText 中提取带有位置的文本(参见this answer;即使它是为iTextSharp 编写的,同样的原则也适用)和覆盖PDFTextStripper.writeString(String, List<TextPosition>) 的PDFBox。

【讨论】:

    猜你喜欢
    • 2013-08-05
    • 2015-05-06
    • 1970-01-01
    • 1970-01-01
    • 2021-11-07
    • 2018-12-01
    • 2019-12-31
    • 1970-01-01
    • 2013-10-29
    相关资源
    最近更新 更多