有没有一种方法可以建立类似Google文档的PDF文件查看器?

15

有没有人认为可以构建一个类似Google Docs的PDF文档查看器,将文档转换为不需要客户端机器上安装Adobe Reader的格式?

如果可以,有没有相关的参考资料可以提供?无论是已经实现的地方,还是如何实现的解释。


你只是想要使用某些东西吗?还是只对自己制作感兴趣? - M.N
这是针对现有文档还是动态生成的文档? - lubos hasko
9个回答

13

我已经对这个问题进行了很多研究,希望能够帮到您。

以前,老牌的Macromedia公司曾推出Flash Paper产品,它被认为是PDF Adobe Reader的替代品,因为它允许任何网站管理员使用Flash在网上嵌入和显示PDF文档。但那是在他们被Adobe收购之前,随后Flash Paper很快就被搁置了,为了Adobe的优先事项而被遗忘了。

然而,今天有很多突破性的替代品...

正如某位用户所提到的,您可以使用Scribd.com(类似于YouTube的文档共享平台)。但他们不是唯一的服务(当然也不是最先进的服务)。

以下是我最喜欢的两个:

  1. Issuu(http://www.issuu.com
  2. Mygazines(http://www.mygazines.com/

我最喜欢Mygazines的Flash用户界面(速度也更快),但它需要99美元。它非常令人印象深刻。根据您想要做什么,这个价格可能是值得的。

然而,Issuu最近凭借其Smartlook平台赢得了我的青睐:http://issuu.com/smartlook

以下是Smartlook在网站上的设置示例:

http://www.ismartlook.com/

此外,它完全免费,这很好。

第三种选择是我自己考虑使用的,这是由一个名叫samurajdata的人制作的免费开源代码。他称其为psview(PostScript查看器)。任何人都可以下载源代码并在此处查看其操作:

http://view.samurajdata.se/

转换为图像文件后,PDF 的质量会有所降低,但设置快速且简单。希望这能帮到您!

3
您可以尝试使用Doconut.com,它看起来与Google文档查看器非常相似。除了PDF之外,它还支持显示所有办公格式、tiff、dwg、psd等格式,并且适用于asp.net 4.0。但是它是一个付费库。

10
你需要披露这是你自己的图书馆! - ThiefMaster

1

如果我理解正确,您只想查看这些文件而不编辑它们。

谷歌已经尽最大努力提供其搜索结果中找到的PDF文件作为HTML。但这并不总是有效。您可以通过设置一个Gmail帐户,将所有PDF文件发送到该帐户,然后使用邮件中的“以HTML格式查看附件”链接来尝试一下。

您的其他选择是将源材料制成HTML,就像LaTeX2HTML对LaTeX文档所做的那样,或将PDF转换为光栅图像(tiff、DjVu等)或矢量图像(PostScript、SVG、SWF)之一。

如果此过程的输入始于PDF文件,则您的选择非常有限,特别是如果PDF的内容仅为光栅图像(例如扫描页面)。

个人建议从源文件创建PDF,并尝试使用Flash Paper将其创建为SWF,因为Flash Paper会模拟打印机。因为约98%的浏览器都支持Flash 9或更高版本。

您看过Scribd吗?


1

这里有一个 Internet Archive BookReader 可供使用。它是用 Javascript (jQuery) 实现的漂亮的书籍阅读器,因此客户端不需要 PDF 阅读器或 Flash。虽然它需要书页图片,但你可以很容易地将其连接到自己的图像服务器上,所以你可以尝试通过 ASP.NET(或类似 XPDF 的任何其他工具)将 PDF 转换为图片。我发现,这比实际实现图像查看器更简单。

此外,它似乎支持搜索高亮显示 (在这里试试),但我还没有调查清楚需要哪些元数据以及格式是什么。

最新的 发布文件 包含了如何使用它的简单示例。更多详细信息和示例可以在第一个链接中找到。


1
你可以使用Google Docs Viewer,它也支持PDF文档。它允许你将其嵌入到你的网页中,并指向PDF所在的URL(不一定要在Google服务器上)。
例如:
http://docs.google.com/viewer?embedded=true&url=http%3A%2F%2Fwww.domain.com%2Fdocument.pdf

嵌入式未显示,在点击刷新按钮后,它才出现在网页上。 - Kuhan

0

尝试将它们从PDF转换为TIFF。Tiff支持多页并得到广泛支持。

如果格式不是很重要,并且您的PDF结构正确(即实际包含文本,而不是文本图像),则另一种选择可能是转换为HTML。 Aspose的工具非常好用。


0

我想知道你为什么要这样做。PDF是一种通用且广泛支持的格式,如果你试图避免使用它,你只能选择:

  • 一个更加晦涩或者支持较少的格式(dvi、svg直到它得到更好的支持)
  • 像谷歌那样将其转换成文本/HTML,但效果不尽如人意
  • 将其转换成图像格式,比如TIFF,这会增加文件大小并且去除PDF的所有优点,比如真实的可选文本和超链接。

如果你不想让用户安装Adobe Reader(可以理解),有很多免费的轻量级PDF阅读器可用(例如Foxit Reader),我相信其中许多都具有浏览器嵌入功能。


0

我在这里漏掉了什么吗?Google文档确实支持PDF。只需上传PDF文件即可。


2
在许多情况下,由于安全和隐私原因,将PDF上传并托管在Google的服务器上是不合适的。为了拥有更受控制的环境,我们更倾向于使用自托管版本的Google文档查看器。 - RyanW

0

根据您的需求,还有其他一些选择:

  • RAD PDF - 用于显示PDF文档、表单等的ASP.NET组件。还允许PDF搜索、书签、文本选择和基本编辑。
  • Atalasoft - 用于图像查看的ASP.NET组件,但也允许将PDF用作图像。不支持除简单查看之外的任何PDF功能。

我在Atalasoft工作,我们实际上支持注释、PDF页面重新排序/删除/添加、书签、嵌入链接等更多功能。 - Lou Franco

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接