2012-07-18 98 views
3

我正在生成包含來自HTML canvas元素的圖像的pdf。我已經設法實現了這一工作,但我無法以有用的方式打開結果。在本機pdf查看器中打開Base64編碼的PDF

PDF.dataURI()返回一個看起來像data:application/pdf;base64,BASE64_ENCODED_PDF_HERE的字符串。

我目前使用window.location = certificate.dataURI()來打開pdf。我已經嘗試過window.open,但Safari不會很好玩。

結果:

在Firefox中,這樣可以節省一個文件,該文件是隨機的名字,其次是.PDF(1)。部分。 在Safari(桌面和移動設備)中,它會在同一個標​​籤中打開PDF,但不會顯示任何PDF查看器界面。 在Chrome中,它會在同一個標​​籤中打開PDF並顯示PDF界面。

基本上,我的問題是如何在瀏覽器中以PDF格式打開該格式的字符串,理想情況是在新選項卡中。

有什麼想法?

+1

你已經看一下[pdf.js(https://開頭的github .COM/Mozilla瀏覽器/ pdf.js)? – 2012-07-19 17:27:25

+1

如果您將它發送到服務器並使其服務於正常版本的文檔,是否會出現問題? – 2012-08-10 11:59:55

回答

0

你試過document.location.href

你可以儘量控制從生成的PDF瀏覽器,但裏面相應的選項PDF瀏覽器的UI界面可以忽略它,這樣人