有一個standard from Adobe,在理論上指定從一個鏈接打開PDF文檔的瀏覽器中單擊的方式來打開特定章節(又名「錨」,「命名參考「)PDF文件。如果希望參考大型PDF的特定部分(如某些標準或規範),此功能應該很有幫助。從一個網頁鏈接到PDF文檔中的特定部分(錨)
但是,從我現在看到的,對這個標準的支持接近於不存在。
例如,這些鏈接應在3.2.6節打開斯卡拉參考PDF, 「註釋類型」:
- http://www.scala-lang.org/docu/files/ScalaReference.pdf#subsection.3.2.6
- http://www.scala-lang.org/docu/files/ScalaReference.pdf#nameddest=subsection.3.2.6
- http://www.scala-lang.org/docu/files/ScalaReference.pdf#page=23
(Techincally,變種#3應打開第23頁,這本質上是相同的目的地)
有沒有一種工作方式(可能與幾個墊片,專有包裝紙或其他任何東西),使這項工作在大多數系統? Adobe Reader插件的使用份額是多少?我應該關心其他系統嗎?
如果這是不可能的,至少我想爲每個平臺(如Windows,Linux,Mac)找到一個工作解決方案,如果他們想要使用指定的目標鏈接,我可以推薦給我的網站用戶。
從我測試:
- 的Windows,MSIE /火狐/ Chrome瀏覽器,Adobe Acrobat Reader軟件插件 - 所有變種9+版本工作,但:
- MSIE有一個奇怪的緩存問題(即錨不起作用,直到文件被緩存)
- 舊版本不工作
- 它issues with link format:一般,所以應定期絕對鏈接到一個真正的Web服務器,開始以「http://」。相關鏈接,桑巴風格的鏈接(
\\HOST\dir\file.pdf#something
),別的除了「HTTP」(或可能,「HTTPS」)方案將無法正常工作
- Windows中,設置運行的Adobe Acrobat Reader作爲一個單獨的瀏覽器的任何過程 - 不工作
- Windows中,任何瀏覽器,福昕閱讀器 - 不工作
- Windows中,任何瀏覽器,CutePDF - 不工作
- 的Linux/Konqueror中/ Okular中 - 只有變#1作品
- 的Linux ,設置爲將Okular或任何其他PDF查看器作爲外部進程運行的任何其他瀏覽器 - 不起作用(如bro wser沒有通過在命令行中的任何「#arguments」)
- 任何操作系統,火狐15+ PDF.js internal PDF viewer - 不工作
我會很感激,如果你想嘗試它在各種不同的組合,以測試。
基本問題可能是您從Adobe調用*標準*實際上僅僅是是來自Adobe * Acrobat SDK *的*指南*,可追溯到* 2007 *。雖然2008年的PDF參考實際上(僅主要編輯修改)成爲ISO標準,但URL指南AFAIK並未提升。因此,該指南僅適用於Adobe Acrobat&Reader及其瀏覽器集成(甚至可能過時)。任何其他的PDF閱讀器都可能採用了其中一些機制,但他們也可能擁有自己的或根本沒有的機制。 – mkl
關於「Windows,任何設置爲將Adobe Acrobat Reader作爲單獨進程運行的瀏覽器」:AFAIK作爲單獨的進程,那些瀏覽器僅通過下載的PDF副本路徑打開這些程序。因此,他們根本沒有機會去所需的位置。 – mkl