2011-09-06 55 views
7

我不满意显示PDF的浏览器内部行为。我想为我的用户提供在我的网站上轻松时尚的PDF查看体验。像Scribd,但可管理和unter全面的安全和控制在我的服务器上。如何在没有Flash/Adob​​e的PHP网站上显示PDF

我可以提供到GoogleDocsViewer或ZohoViewer的内联链接。或者使用SWFTools上传PDF后立即使用原生PHP或HTML5显示swf。

无论如何,不​​知何故,经过数小时的阅读和思考,我只是不满意任何上述方法。

有什么建议吗?

回答

2

看看Google Docs Viewer。下面的代码将帮助您(未经测试)

<iframe src="http://docs.google.com/gview?embedded=true&url=PDF-URL" style="width:600px; height:500px;" frameborder="0"></iframe> 

更新2016年9月13日: 谷歌删除自己的发电机。尽管如此,您仍然可以通过手动将上述转义的文档url添加到上面的url中来使用查看器。

+0

谢谢!真正! GoogleDocsViewer似乎是目前最好的选择。在过去,我对它有一些utf8问题。许多“PDF”无法显示,因为在文件名或PDF内的某处以及未编码的UTF-8字符。 – maxpower9000

+0

截至目前,我使用jQuery点击触发器将iFrame的src-attribute设置为我想要显示在我的站点中的PDF。像这样:$('A#trigger').click(function(){$('IFRAME').attr('src','linktothegoogledocsviewerpdf'); – maxpower9000

+0

这是迄今为止最简单的强制PDF打开的方法在浏览器中安全地嵌入它。 –

2

我不得不做类似的事情,最后我选择使用ImageMagick生成图像,其工作方式与Google Viewer完全相同。

但是,如果你愿意,你还可以尝试使用它从Mozilla的PDF.js,并且想要替换de browser PDF插件。

+0

是的。谢谢!我忘了在我的问题中提到PDF.js。我在[link](http://andreasgal.com/2011/06/15/pdf-js/)上阅读了它。但这是一项正在进行的工作,不是吗?它在任何地方都可用吗?它会跨越操作系统和跨浏览器吗?那么,也许我应该先阅读。 – maxpower9000

+0

它的工作非常好,但就像你说它仍在进行中。你可以看到一些工作示例[here](http://andreasgal.github.com/pdf.js/) – yvan

+0

不幸的是,生成图像不允许复制/粘贴。它看起来是最好的现在是从poppler/pdftohtml/openoffice的输出,并添加HTML5字体转换,这可能是scribd/crocodoc内部做的 –