【问题标题】:Convert PDF OLE objects back to file (attachments) in Lotus Notes?在 Lotus Notes 中将 PDF OLE 对象转换回文件(附件)?
【发布时间】:2019-03-11 10:06:06
【问题描述】:

我有一个数据库,其中包含大量作为 OLE 对象嵌入到 Notes RichText 字段中的 PDF 文档。这些与 XPage 不兼容,因此我需要将 OLE 对象转换为文件(附件)。 我怎样才能以自动方式执行此操作(我知道它必须在 Notes 客户端中运行(必须吗?) - 或者是否有一种 POI 方法来提取它们?

澄清
我可以提取 blob(如果需要,可以将其提取到内存中),但将其写入磁盘不会创建 PDF 文件,因为该 blob 是一个 OLE 容器。所以我看到了 2 条可能的路径:

  • 激活 OLE 对象并使用其中的方法
  • 阅读 blob 并获取一些提取 PDF 部分的内容(可能是 Apache POI

但我没有接触过这些方法中的任何一种,我想知道一些建议是否可以节省我数小时的测试时间

【问题讨论】:

  • PDF OLE 对象向 LotusScript 公开了哪些方法?
  • 好问题。激活我想,但是...我需要帮助:-)
  • 很久没有想到 Notes 中的 OLE 自动化,所以我记不太清了,无法真正提供帮助。但我确实找到了 Acrobat OLE API 的参考:livedocs.adobe.com/acrobat_sdk/9.1/Acrobat9_1_HTMLHelp/wwhelp/…
  • AcroExch.AVDoc类中好像有save方法。
  • 这里也一样。当有人说 OLE 时,我会想到西班牙语问候语。是时候清理一些记忆了:-)

标签: pdf apache-poi lotus-notes xpages ole


【解决方案1】:

dxl 工具可以吗?我已经使用 dxl 导出器从文档中提取嵌入的图像,也许这对 ole 对象也是可行的?

我在openntf上使用了lotusscript黄金收藏项目的EmbeddedImage对象的一个​​略微改动的版本

这个库包含一个对象 Embeddedimagelist,它在 DXL 中搜索图片标签并尝试解析其内容。也许这也适用于嵌入式 ole 对象。

【讨论】:

  • 这一步相当简单。当您在内存中有该 blob 时,问题就开始了。将其写入磁盘不会创建 PDF 文件。它是一个 OLE 容器 - 这正是我的问题
【解决方案2】:

我认为搜索 %PDF 然后将所有内容保存为文件应该是五个 PDF。从理论上讲,OLE 文件中可能有很多东西,但在大多数情况下,您会得到一个简单地以 OLE 标头(或其他名称)作为前缀的文件。

我曾在一个场合使用过这种方法(但不适用于 PDF),它似乎工作正常。

我猜这就是 jjtbsomhorst 所说的 openntf 方法所基于的 :-)

【讨论】:

  • 我试试看。我怀疑 Apache POI 可能会有所帮助
猜你喜欢
  • 1970-01-01
  • 2011-08-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-02-03
相关资源
最近更新 更多