java 转 office(doc\ppt),pdf 为 html 格式有什么好建议

2015-07-29 23:05:48 +08:00
 mysoko

大家知道百度文库的方案怎么实现的不?

现在想做个把doc内容转为html内容,便于桌面和手机浏览

百度文库把ppt作为image保存的,请问如何实现?


有相关经验的可以详谈,收费价格合理都是可以的,mail:supersoko#qq.com。

补充:主要是内容格式和图片如何保留????

5992 次点击
所在节点    Java
12 条回复
kslr
2015-07-30 00:06:38 +08:00
到Github搜一搜,我记得有几个正式解决方案了。
cxe2v
2015-07-30 00:12:43 +08:00
以前做过doc转pdf,html的,不过是用c#做的中间件,里面太复杂了
OpooPages
2015-07-30 00:12:59 +08:00
openoffice
OpooPages
2015-07-30 00:21:33 +08:00
openoffice可以作为后台服务启动运行,监听在特定端口,java调用即可。
通常2种方式:
1 doc 通过openoffice转 pdf,再通过pdf2swf转 swf,然后封装个阅读器可以在网页上阅读,但无法复制等,起到文档保护作用。
2 doc 通过openoffice转 pdf,再通过pdf2png转图片,然后可在网页浏览。

至于doc转html,openoffice似乎也支持。
ob
2015-07-30 00:38:42 +08:00
jacob控件可以直接调用office的word转pdf功能,前提是要在windows下面,并且要安装office,通过java代码可以直接操作,好几种转换格式,应该也有html的。
neetrorschach
2015-07-30 00:38:46 +08:00
有个itext或者itextsharp库
一个是java的一个是c#的,用来做pdf的转化。
以前给一个客户做过一个excel插件用来转化pdf到excel,但只能用在固定格式的pdf上。
https://www.pdftoexcelonline.com/这个网站做的很好,几乎能做成和原页面一样的文档,不知道怎么实现的。
helone
2015-07-30 00:43:00 +08:00
七牛不是刚出文档转换的服务么?可以参考一下
OpooPages
2015-07-30 00:43:53 +08:00
OpenOffice是跨平台的,windows linux solaris都能跑。

有个前端的东西好像叫FlexPaper.
OpooPages
2015-07-30 17:53:02 +08:00
在WEB应用提供文档在线阅读功能通常有以下两个目的:
1. 方便阅读。最终用户不需要下载后才能阅读,也不需要安装阅读软件(Microsoft Office, Adobe Reader等)即可阅读文件内容
2. 文档保护。只允许阅读,不允许打印和下载。


以前做类似功能时,专门做了一些研究,研究的对象包括百度文库、豆丁、Google Docs Viewer、 DocVerse(被Google收购)、Scribd、OPEN文档、BOOKFM等(有些是不是还活着没留意)。

这些产品基本上支持以下一些格式的在线阅读(不尽相同):
Microsoft Word(.DOC 和 .DOCX)
Microsoft Excel(.XLS 和 .XLSX)
Microsoft PowerPoint(.PPT 和 .PPTX)
Adobe 便携式文档格式 (.pdf)
Text (.txt)
OpenDocument (.odf)


以上研究对象可分为两类:

1. 将原始文档转成图片(JPEG,PNG等),在浏览器中展示;

将原始文件通过一系列过程最终转换成多个图片文件,原始文件中的每一页对应一个图片文件,然后通过HTML结合JavaScript设计一个阅读器(也可以通过Flex设计阅读器),根据用户操作动态加载图片进行展示。Google Docs Viewer、Bookfm 属于这类产品。

Google Docs Viewer有强大的硬件支持和技术,放大缩小时都重新从后台加载不同尺寸的图片,所以放大到一定程度也不会需,小图快速浏览时不会加载小尺寸图提高速度。而且选择区域后从后台提取文字到剪贴板,很牛。

2. 将原始文档转成Flash文件(SWF),在浏览器中展示。

将原始文件通过一系列过程最终转换成一个或者多个swf文件。转成单个SWF时,原始文件中的每一页对应swf文件中的每一帧;转成多个SWF时,每个SWF文件只有一帧,对应原始文件中的一页。然后通过SWF的阅读器(例如FlexPaper)展示。Scribd, DocVerse, 百度文库,豆丁属于这类产品。

百度文库还略有不同,它将原始文件分成了N个部分,每个部分大约是5页,然后转成了N个SWF,也就是说每个SWF中都包含了大约5页的内容,然后在网页通过一定的手段一次读取大约5页的内容。具体参考百度文库章节。

(哦,再次强调,这是几年前研究的情况,目前可能已经不同,毕竟技术日新月异)
OpooPages
2015-07-30 17:56:39 +08:00
(怎么修改回复呢。。。。)
上文部分为: 所以放大到一定程度也不会虚,小图快速浏览时会加载小尺寸图以提高速度。
mysoko
2015-08-01 13:28:08 +08:00
@kslr 请求有什么项目
mysoko
2015-08-01 13:28:30 +08:00
@OpooPages 能否留个联系方式细谈

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/209411

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX