2009-10-26 35 views
0

我已經編輯這篇頗有幾分在這一點上加粗我的問題。我意識到PDF在瀏覽器中不可完全控制,但這不是我的問題。我的問題是,下面以粗體顯示。獲取PDF留在嵌入式<object>或<iframe>

<div> 
    <object 
     data="${pageContext.request.contextPath}/UB04.xml" 
     type="application/vnd.adobe.xdp+xml" 
     width="415" height="500"/> 
</div> 

的XML實際上是一個XDP文件;它爲靜態PDF提供動態數據和URL,並將它們組合到Adobe Reader中。如果它是PDF格式,則它會在瀏覽器中顯示,但是當它作爲XDP放入時,它會控制窗口並以全屏方式打開以顯示PDF。提供全功能於一身的XDP(將PDF嵌入爲base64)具有相同的問題。

幫我做的XDP行爲相同的PDF?

或者,如果我可以使用iText將XDP XML和靜態PDF模板粘合在一起,那麼我可以直接提供PDF,這看起來工作得很好。只是不知道如何創建PDF的路線,這是有點在線記錄。

回答

1

一個可能的解決方案:使用iText的將數據加入到PDF,跳過XDP完全。

+1

我使用Adobe LiveCycle將XDP轉換爲PDF。這似乎工作得很好,並且我將嵌入PDF作爲沒有問題。我在PDF的網址中添加了一些選項來控制其顯示效果,以滿足我的需求:filename.pdf#toolbar = 0&navpanes = 0&zoom = 100 –

1

此行爲是由用戶代理(客戶端)決定的,而且是應該保留。抱歉。

+0

好,任何建議的解決方法?如果擴展名是PDF,我可以很容易地做到這一點,但是當通過XDP生成PDF時,這不是我可以在此使用的解決方法。 –

+1

不可以。即使它在您的開發環境中按預期工作,您也可以放心,將會有大量用戶體驗不同(因爲它們的設置不同)。作爲一般的經驗法則,我不打擾這樣的事情,因爲客戶端控制這種行爲是有意義的。我不會有任何其他的方式。 –

+1

TBH我真的希望人們不要試圖在網頁中嵌入PDF。這是一個可用性恐怖,不得不安裝Reader插件已被證明是一個安全災難。請給我們一個PDF文件的鏈接並完成它。 – bobince

-1

你要找的是所謂的Adobe FLASHPAPER: http://www.adobe.com/products/flashpaper/examples/

,否則你不能決定用戶將如何查看PDF文件。

+1

如果我把PDF直接放入iframe中,它似乎在這裏有六個不同的用戶機器上工作得很好。如果我將XDP/PDF放入iframe或object中,則不需要骰子。 –

+0

正如上面提到的,你milage會根據用戶的設置,所以你不能決定他們將如何顯示它,這就是爲什麼Adobe創建FlashPaper的,這樣你就可以。 – Jakub

+0

哪位用戶設置?如果我可以在瀏覽器中關閉它,那就足夠了;我在這一個用戶控制級別非常高。 –