2012-03-02 52 views
7

我有一個非常簡單的純HTML文件,其中有很多PDF文件。我有這樣的鏈接:查看HTML格式的PDF文件無法下載它

<a href="pdffile.pdf"> PDF 1 here </a> 

當我點擊鏈接,PDF文件是downaloaded,並在本機讀者程序中查看。我希望它在瀏覽器的另一個窗口中打開,並在那裏閱讀,而不是手動將副本保存到我的計算機並打開它。

+0

似乎這是一個已知的Chrome問題。你在其他地方也看到過相同的問題嗎?對於Chrome修復程序,您可以使用此https://chrome.google.com/webstore/detail/nnbmlagghjjcbdhgmkedmbmedengocbn – 2012-03-02 08:45:04

回答

8

在瀏覽器中查看PDF文件(無需下載)需要客戶端瀏覽器的附件。例如,Google Chrome瀏覽器內置PDF閱讀器,可以直接打開文件,而IE和Firefox則要求您安裝插件(Adobe Reader附帶的插件)。

還有其他兩種方法:

  1. 將文件轉換爲HTML,圖像,或者可以在瀏覽器中直接觀看的任何其它格式。這種轉換可以使用服務器端(用PHP,Python,ASP,任何語言編寫)即時即時轉換,或者您可以將所有文件預先轉換爲可讀文件。

  2. 另一種方法是使用基於Flash的PDF查看器(例如http://flexpaper.devaldi.com/),該方法是最佳。這很簡單,靈活,不需要編寫服務器端代碼。這種方法被許多文件共享網站(如http://www.scribd.com/http://www.slideshare.net/http://www.docstoc.com/

+0

我認爲這個答案對我的問題有最接近的解決方案。謝謝@Aziz – woninana 2012-03-02 09:09:24

1

您的瀏覽器需要一個PDF閱讀器才能在瀏覽器中閱讀PDF。快速谷歌搜索應該爲您提供一個適用於您使用的任何瀏覽器。

0

如果文件沒有被緩存,它必須被下載。也就是說,如果你使用HTTP抓取它。如果它位於本地文件系統上,則可以使用file URI scheme

+0

他意味着他希望它在瀏覽器中顯示,而不是由Adobe Reader下載和查看。 – 2012-03-02 08:44:49

+1

從其他答案和選票判斷,你是對的。但是接下來他的問題應該是:「如何在瀏覽器窗口中打開PDF,而不是在另一個應用中打開」。他的意思並不那麼明顯。 – 2012-03-02 08:54:58

+0

你說得對,這並不明顯。我編輯了這個問題來詳細說明。 – 2012-03-02 08:57:19

2

我用這個

爲HTML

<a href="view.php?download_file=MIKOGO Remote Support.pdf"><img src="images/view.png" alt=" " border="0"/></a> 

和觀看view.php文件它通過PDF。

<?php 

$path = $_SERVER['DOCUMENT_ROOT']."/demo/documents/"; // change the path to fit your websites document structure 
$fullPath = $path.$_GET['download_file']; 

if ($fd = fopen ($fullPath, "r")) { 
$fsize = filesize($fullPath); 
$path_parts = pathinfo($fullPath); 
$ext = strtolower($path_parts["extension"]); 
switch ($ext) { 
    case "pdf": 
    header("Content-type: application/pdf"); // add here more headers for diff. extensions 
    header("Content-Disposition: inline; filename=\"".$path_parts["basename"]."\"");  
    break; 
    default; 
    header("Content-type: application/octet-stream"); 
    header("Content-Disposition: filename=\"".$path_parts["basename"]."\""); 
} 
header("Content-length: $fsize"); 
header("Cache-control: private"); //use this to open files directly 
while(!feof($fd)) { 
    $buffer = fread($fd, 2048); 
    echo $buffer; 
} 
} 
fclose ($fd); 
exit; 
?> 

確保您的瀏覽器上有PDF加載項。

3

Mozilla創建了PDF.js庫。它在沒有外部閱讀器或插件的網頁中顯示PDF文件。