使用 iTextSharp 删除带有特定超链接的图像

Deleting Images With Specific Hyperlink Using iTextSharp

我创建了一个 Word 文档,我在其中插入了一些图像,添加了超链接(指向这些图像),并将文档转换为 pdf。有没有办法使用 iTextSharp 库找到具有特定超链接的图像的位置?我找到了可以 return 图像或超链接文本的解决方案,但这并不是我所需要的。 我的最终目标是找到具有特定 URL 的图像并删除它(连同关联的 URL),同时保存其位置(必须在删除前保存 x、y、高度和宽度)。

谢谢。

您找到的解决方案可以 return:

  • 图像及其位置,
  • hyperlink 及其位置。

而这正是您所需要的。现在将图像的位置与 hyperlink 的位置进行比较,你就会知道哪个图像对应哪个 link.

您要求查找具有特定 URL 的图像,但 PDF 中没有此类内容。在 PDF 中,每个页面都使用 页面字典 进行描述。在本页词典中,有:

  • 一个名为 /Contents 的条目(必填):这是指页面的内容流,内容流包含对图像的引用(存储为 /XObject /Resources 页面词典条目)。
  • 名为 /Annots 的条目(可选):这是指添加在内容之上的所有注释。 Hyperlinks 存储在 link annotations.

链接不知道它们涵盖的内容。内容不知道覆盖它们的注释。这就是为什么你没有找到你的问题的答案。您对可点击图片的假设是错误的。