我使用asp.net在某些瀏覽器上生成動態.pdf文件,例如firefox顯示pdf,但是在IE上& Safari提供了「另存爲」比在瀏覽器中顯示它。我已經使用了相同的iFrame。此外,要顯示PDF文件是否要求客戶端應該有Adobe Reader或某個插件來顯示PDF?PDF不會在所有使用Asp.net的瀏覽器上呈現
protected void bttnpdf_Click(object sender, EventArgs e)
{
string FilePath = Server.MapPath("sample.pdf");
WebClient User = new WebClient();
Byte[] FileBuffer = User.DownloadData(FilePath);
if (FileBuffer != null)
{
Response.ContentType = "application/pdf";
Response.AddHeader("content-length", FileBuffer.Length.ToString());
Response.BinaryWrite(FileBuffer);
}
}
任何幫助,將不勝感激。
在此先感謝
它取決於Adobe插件,如果您沒有爲I.E安裝該插件。或Safari然後它會要求保存文件,而不是然後打開PDF文件 –
感謝您的快速響應。你也可以請推薦一些標準的方式來呈現所有瀏覽器的PDF,考慮到這兩種情況,即客戶端已安裝/未安裝Adobe插件。 – Dev
由於您提到您使用的是iframe,所以如果iframe能夠找到插件,它將呈現pdf並顯示該pdf文件,否則它將不會呈現並將整個pdf文件傳遞給瀏覽器,因此瀏覽器無法理解該做什麼與該pdf和按默認行動,它會要求保存文件 –