2012-08-14 68 views
0

我即將開始的移動web項目需要查看網頁中動態選擇的pdf文件。我使用iFrame來顯示PDF文件,並且可以使用雙指滾動來滾動文件。但我現在面臨的問題是:html5/css3,Asp.net MVC3 - 在移動Safari瀏覽器的html頁面中查看pdf

  1. 該文件的第一頁是不是在iPad上完全顯示,並得到沿寬度切斷時,我認爲它在桌面瀏覽器不像的第一頁儘管縮小以適應iFrame區域,但pdf始終完全顯示。

  2. 對於PDF文檔可以滾動的用戶沒有可視化的指示,即PDF文檔沒有滾動條。

  3. 與我在桌面瀏覽器上看到的不同,pdf查看器(Adobe reader)的控件(頁面導航,縮放等)不會出現在文檔中。

什麼是最好的方法來實現我想要做的事情?你們有沒有專家知道我面臨的問題的任何解決方案/解決方法?也可以考慮使用除iFrame以外的任何其他方法。

爲什麼PDF應該在html頁面內的原因是,pdf文件的列表將位於頁面左側的菜單欄上,用戶可以點擊其中的任意一個來查看相同的頁。理想情況下,他們將能夠在全屏視圖和該視圖之間切換。

任何幫助表示讚賞。

回答

0

我在網上尋找答案時遇到了這個Recommended way to embed PDF in HTML?

上述鏈接討論了我可以使用的一些選項和Google文檔查看器爲我工作,但不知道是否有任何(如數據限制)我需要在網站上使用它之前知道的。我也不知道它是否是一個很好的解決方案(儘管全屏模式不可用,但放大/縮小和下一頁/上一頁頁面按鈕顯示在iPad的移動Safari上)以便使用用於將在iPad上運行的網絡應用程序。

無論如何,我會繼續研究一個更好的解決方案,如果我沒有找到任何,我會堅持谷歌文檔查看器。

0

我有同樣的問題沒有完全顯示pdf。我發現解決這個問題的唯一方法是改變包含pdf的div的大小。

例如,如果包含PDF的元素是一個div,那麼我將它的寬度更改爲任何值並回滾到它之前的值。改變任何一個工作的寬度或高度。

有時候我不得不使用的setTimeout調用我的可調整大小的方法

0

我創建了一個微小的JavaScript模塊,可以幫助你展現一個PDF內嵌並能夠滾動它之前等待一點點。但我也想不出一種方法來使它適合父容器的總寬度。

檢查出來:https://github.com/williamrjribeiro/ipdf-scroll

乾杯。

+0

只是好奇,它允許用戶放大和縮小? – WhatsInAName 2012-10-18 18:29:57

+0

@DebarupaDe:是的,但不是*原生PDF縮放。這只是默認的瀏覽器縮放。這意味着PDF不會像應該那樣好。這是在標籤上設置的。 – 2012-10-31 11:19:22

0

這個問題似乎是IPad上Safari的一個bug。

我沒有找到一個解決方案,在HTML中嵌入PDF但我沒有找到這樣的:

如果您從控制器的行動,而不是一個視圖返回FileStreamResult,PDF將在新標籤中打開,它的沒有嵌入HTML,但至少你的用戶不需要下載文件並手動打開它們。