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

时间:2015-08-18 12:32:10

标签: c# pdf itextsharp

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

谢谢。

1 个答案:

答案 0 :(得分:1)

您找到了可以返回的解决方案:

  • 图像及其位置,
  • 超链接及其位置。

而这正是你所需要的。现在比较图像的位置和超链接的位置,你就知道哪个图像对应哪个链接。

您要求查找具有特定网址的图片,但PDF中没有此类内容。在PDF中,使用页面词典描述每个页面。在这个页面字典中,有:

  • 名为/Contents的条目(必填):这是指页面的内容流,内容流包含对图像的引用(在{{中存储为/XObject 1}}页面词典的输入。)
  • 名为/Resources的条目(可选):这是指在内容之上添加的所有注释。超链接存储在链接注释

链接不了解其涵盖的内容。内容不知道涵盖它们的注释。这就是为什么你找不到问题答案的原因。您对可点击图片做出了错误的假设。