我的用户将在他们的机器上选择一个PDF文档,将其上传到我的网站,在那里我将转换为HTML文档以便在网站上显示。转换后,文档将存储在数据库中。
将PDF转换为HTML的最佳方法是什么?
我已经提出了一个要求,即用户可以创建一个“新闻”故事作为pdf,然后将其上传到服务器,在那里它将转换为HTML并显示在网站上。
答案 0 :(得分:2)
任何可以将文档保存为PDF的文档创建软件都可以将它们保存为HTML。我假设问题在于您的用户将创建丰富的文档(大量嵌入式图像),从而产生多个文件,并且您的要求源于希望尽可能简单地将这些文档上载到用户。
有许多转换包可以为您做到这一点,但是当您谈论丰富的内容时,您正在谈论文本和图像。这些图像必须存储在某处并以某种方式提供,无论您使用何种转换方法,都需要检查所有图像源,以确保它们指向服务器上的有效位置。
我想建议您可以采用另一种方法来实现这一目标:实施许多博客API之一用于发布内容。有免费和商业软件包使用这些API将内容直接发布到网站,如Windows Live Writer和Microsoft Word。您的用户只需创建他们的内容并将其直接上传到您的网站,而无需先将其发布为PDF然后上传。因此,对于您的用户来说,此过程变得更加顺畅,并且您可以使用不需要花费数千美元来开发或购买转化代码的表单来获取帖子。
两个最常见的API是MetaWeblog API和Movable Type API。两者都非常简单,易于实现。我认为这种方式比你想做的更好。
答案 1 :(得分:1)
我认为将PDF转换为HTML字符串不一定是最好的主意,特别是如果您想将其导出为PDF格式。 PDF文件通常包含二进制元素,如图像,因此您最好通过编码将其转换为ASCII,例如Base64。这样,您将拥有一个ASCII字符串,您可以将其保存到数据库中的文本字段中,然后将其转换回来。你能否进一步扩展主要要求?
答案 2 :(得分:1)
我的建议是不要这样做,如果可能(但我们都知道管理者是什么样的)所以......
我建议您远离将PDF转换为HTML或从HTML转换(因为除非您能找到商业解决方案,否则它几乎不可能),而是按照已经提到过并将其存储为编码的Base64字符串,或BLOB或数据库中的其他二进制格式,然后使用某种浏览器的PDF视图插件将其显示给用户。
答案 3 :(得分:1)
所有这一切都是一个简单的谷歌搜索“PDF到HTML”:http://www.gnostice.com/pdf2manyOverview_x.asp。我确定还有其他人。
因此,虽然“可能”,但您可能希望向您的经理解释这不是最佳的内容管理解决方案。
答案 4 :(得分:1)
为什么不使用iTextSharp来阅读PDF内容?然后,您可以将二进制PDF和文本内容保存到数据库中。然后,您可以让用户搜索内容并下载PDF。
答案 5 :(得分:0)
您应该查看DynamicPDF。他们有一个转换器(目前是Beta),正好用于此目的。我们已经非常成功地使用了他们的产品(特别是将Reporting Services报告直接转储为PDF)。