2015-06-10 121 views
0

我需要通過OpenXml以編程方式將PowerPoint文檔嵌入到PowerPoint中。據此:Embedding files into Open XML documents using C#可以通過OLE32.StgCreateStorageEx方法創建必要的圖片以及oleobject。在PowerPoint中使用OpenXml嵌入PDF與較新版本失敗

不幸的是,這並不適用於當前版本的PDF。 在64位操作系統上,這似乎只適用於Abobe版本9.較高版本會失敗,錯誤代碼爲0x8000FFFF,這會導致災難性故障。經過測試,這是真實的。即使是版本9也不可靠。

作爲一個後備,我使用谷歌從第一頁創建一個PNG的pdfium。不幸的是,這只是其中的一半,因爲所包含的oleobject與原始的非常不同。直到用戶嘗試通過Powerpoint內的雙擊打開嵌入文檔時纔會受到傷害。然後出現一條錯誤消息,表示無法找到該文檔的應用程序。

這裏我的問題:

  • 在如何改善,使其與從未版本甚至工作程序的人的信息?
  • 有沒有人知道對pdf文檔所做的更改是否需要合併類似的對象,比如pdf呢?

任何暗示的高度讚賞

回答

0

最後我做到了運行。看看here的解釋。

實際上,與Embedding files into Open XML documents using C#中的代碼相比,只有一個區別。在調用時,必須使用StgCreateStorageEx OLE32.STGFMT.STGFMT_DOCFILE,而不是STGFMT_STORAGE。

即使使用較新的Adobe版本,也能使其運行。

相關問題