如何转换PPT扫描文件转换成wordPDF文件中的Java

java 转 office(doc\ppt),pdf 为 html 格式有什么好建议
23:05:48 +08:00 · 2788 次点击
大家知道百度文库的方案怎么实现的不?
现在想做个把doc内容转为html内容,便于桌面和手机浏览
百度文库把ppt作为image保存的,请问如何实现?
有相关经验的可以详谈,收费价格合理都是可以的,mail:supersoko#qq.com。
补充:主要是内容格式和图片如何保留????
12 回复 &| &直到
13:28:30 +08:00
& & 00:06:38 +08:00 via Android
到Github搜一搜,我记得有几个正式解决方案了。
& & 00:12:43 +08:00
以前做过doc转pdf,html的,不过是用c#做的中间件,里面太复杂了
& & 00:12:59 +08:00 via Android
openoffice
& & 00:21:33 +08:00 via Android
openoffice可以作为后台服务启动运行,监听在特定端口,java调用即可。
通常2种方式:
1 doc 通过openoffice转 pdf,再通过pdf2swf转 swf,然后封装个阅读器可以在网页上阅读,但无法复制等,起到文档保护作用。
2 doc 通过openoffice转 pdf,再通过pdf2png转图片,然后可在网页浏览。
至于doc转html,openoffice似乎也支持。
& & 00:38:42 +08:00 via Android
jacob控件可以直接调用office的word转pdf功能,前提是要在windows下面,并且要安装office,通过java代码可以直接操作,好几种转换格式,应该也有html的。
& & 00:38:46 +08:00
有个itext或者itextsharp库
一个是java的一个是c#的,用来做pdf的转化。
以前给一个客户做过一个excel插件用来转化pdf到excel,但只能用在固定格式的pdf上。
& & 00:43:00 +08:00
七牛不是刚出文档转换的服务么?可以参考一下
& & 00:43:53 +08:00 via Android
OpenOffice是跨平台的,windows linux solaris都能跑。
有个前端的东西好像叫FlexPaper.
& & 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页的内容。具体参考百度文库章节。
(哦,再次强调,这是几年前研究的情况,目前可能已经不同,毕竟技术日新月异)
& & 17:56:39 +08:00
(怎么修改回复呢。。。。)
上文部分为: 所以放大到一定程度也不会虚,小图快速浏览时会加载小尺寸图以提高速度。
& & 13:28:08 +08:00
@ 请求有什么项目
& & 13:28:30 +08:00
@ 能否留个联系方式细谈
& · & 2053 人在线 & 最高记录 3541 & · &
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.0 · 60ms · UTC 14:17 · PVG 22:17 · LAX 06:17 · JFK 09:17? Do have faith in what you're doing.  整理工作文件时常常需要将ppt或word转换成pdf文件的问题,发给客户的文件资料、产品说明介绍书等,但是又不允许他们编辑等原因,既然如此该怎么将ppt文档原样格式转换成pdf呢?事实上非常简单。
  我们这里使用的是全新迅捷在线ppt转换成pdf转换器,想office转pdf、图片转pdf等功能都有。首先需要你去百度访问该平台。这个方法很简单,大家仅需输入关键词“在线pdf转换器、pdf在线转换软件”等都可以快速找到,进入该平台后,大家就可以轻松实现ppt怎么转pdf拉。
  第一步:在软件上方格式栏目中,找到并单击相应的文件模式――ppt转pdf,这个比较重要的一步,如果选择错误,那么下面的步骤是无法继续下去的。
  第二步:单击“选择文件”按钮,然后在显示的窗口中将需要转化的ppt文件添加到服务器中,在上传文件过程中要注意文件上传过程中大小不得超出2M,超过的文本将无效。
  第三步:在线pdf转换网站默认将ppt文本保存在桌面“自定义文件夹”中,方便我们及时查找,因而我们越过这一步直接单击下方的“生成pdf文档”按键,等待ppt成功转换成pdf,转换完成后,我们就可以按下“下载pdf文档”进行下载pdf文档了。ppt转换成pdf转换器
  怎么样,简单吧?在这里小编提醒大家,当文本的大小越过限定的文件大小时,大家可以穿插使用专业版pdf转换器,该软件支持批量文档转化的同时,也可以将pdf转换成pp、word、excel等其他可以编辑的文本格式,相对于免费在线版在功能上更上一层楼。
楼主邀你扫码
参与上面帖子讨论
你尚未登录或可能已退出账号:(请先或者
【敬请阅读】
亲爱的网友们,、有更新哦!
请您务必审慎阅读、充分理解各条款内容,特别是免除或者限制责任的条款、法律适用和争议解决条款。免除或者限制责任将以粗体标识,您应重点阅读。
【特别提示】
如您继续使用我们的服务,表示您已充分阅读、理解并接受《西祠站规》、《西祠胡同用户隐私保护政策》的全部内容。阅读《西祠站规》、《西祠胡同用户隐私保护政策》的过程中,如果您有任何疑问,可向平台客服咨询。如您不同意《西祠站规》、《西祠胡同用户隐私保护政策》的任何条款,可立即停止使用服务。
南京西祠信息技术股份有限公司
我已阅读并同意、中的全部内容!用java把word转成pdf - ITeye问答
问问各位大哥大姐 怎么用java把word转成pdf,& 还有用java操纵word& 获得word中的数据
问题补充:我想知道的是word转pdf啊……
采纳的答案
& 可以用开源项目 http://sourceforge.net/projects/jcom
& 具体代码是
&&
import jp.ne.so_net.ga2.no_ji.jcom.ID
import jp.ne.so_net.ga2.no_ji.jcom.ReleaseM
public class Office2Pdf {
public void createPDF(String officePath,String pdfPath) throws Exception {
ReleaseManager rm =
IDispatch app =
rm=new ReleaseManager();
app = new IDispatch(rm, "PDFMakerAPI.PDFMakerApp");
app.method("CreatePDF",new Object[]{officePath,pdfPath});
} catch (Exception e) {
} finally {
rm.release();
} catch (Exception e) {
public static void main(String[] args) throws Exception {
Office2Pdf one=new Office2Pdf();
one.createPDF("E:\\codigg.ppt","E:\\codigg-ppt.pdf");
one.createPDF("E:\\codigg.doc","E:\\codigg-doc.pdf");
one.createPDF("E:\\codigg.xls","E:\\codigg-xls.pdf");
希望对你有用
用PageOffice转,PageOffice调用的是微软office的接口转的pdf,格式不会有任何问题。
有没有相应的jcom。jar& 网上找了好多个都不能用
我上面都给出代码了 确实是转pdf啊 而且不光可以读取doc 还可以读取xls和ppt啊
这个是用jacob操作微软office 组件
如果想用openoffice,可以发站内信给我 ,我把代码和详细步骤告诉你
1.打印pdf的话用pdf打印机pdfcreater用Java本地调用命令,windows不跨平台。打印效果好。
2.openoffice有一个java的包,跨平台,但openoffice对于复杂的格式效果不好。
用 jacob 试试
引用我想知道的是word转pdf啊……
你是有Word要转PDF???
那装一个openOffice就可以了。。
这个资料可能对你有帮助
&& POI处理word比较方便
apache的POI处理Word,PDFBox处理PDF
已解决问题
未解决问题最近项目中要实现WORD的文件预览功能,我们可以通过将WORD转换成PDF或者HTML,然后通过浏览器预览。
OpenOffice
OpenOffice.org 是一套跨平台的办公室软件套件,能在 Windows、Linux、MacOS X (X11)、和 Solaris 等操作系统上执行。它与各个主要的办公室软件套件兼容。OpenOffice.org 是自由软件,任何人都可以免费下载、使用、及推广它。
JodConverter
jodconverter-2.2.2.zip 下载地址:
启动OpenOffice的服务
进入openoffice安装目录,通过cmd启动一个soffice服务,启动的命令是soffice -headless -accept="socket,host=127.0.0.1,port=8100;"。
如果觉得后台运行OpenOffice服务比较麻烦,可以通过
public class PDFDemo {
public static boolean officeToPDF(String sourceFile, String destFile) {
File inputFile = new File(sourceFile);
if (!inputFile.exists()) {
// 找不到源文件, 则返回false
return false;
// 如果目标路径不存在, 则新建该路径
File outputFile = new File(destFile);
if (!outputFile.getParentFile().exists()) {
outputFile.getParentFile().mkdirs();
//如果目标文件存在,则删除
if (outputFile.exists()) {
outputFile.delete();
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm");
OpenOfficeConnection connection = new SocketOpenOfficeConnection("127.0.0.1", 8100);
connection.connect();
//用于测试openOffice连接时间
System.out.println("连接时间:" + df.format(new Date()));
DocumentConverter converter = new StreamOpenOfficeDocumentConverter(
connection);
converter.convert(inputFile, outputFile);
//测试word转PDF的转换时间
System.out.println("转换时间:" + df.format(new Date()));
connection.disconnect();
return true;
} catch (ConnectException e) {
e.printStackTrace();
System.err.println("openOffice连接失败!请检查IP,端口");
} catch (Exception e) {
e.printStackTrace();
return false;
public static void main(String[] args) {
officeToPDF("E:\\test.docx", "E:\\test.pdf");
Word、ppt转Html
只需要将后缀名从.pdf改为.html即可。
public static void main(String[] args) {
officeToPDF("E:\\test.docx", "E:\\test.html");
&dependency&
&groupId&com.artofsolving&/groupId&
&artifactId&jodconverter&/artifactId&
&version&2.2.1&/version&
&/dependency&
&dependency&
&groupId&org.openoffice&/groupId&
&artifactId&jurt&/artifactId&
&version&3.0.1&/version&
&/dependency&
&dependency&
&groupId&org.openoffice&/groupId&
&artifactId&ridl&/artifactId&
&version&3.0.1&/version&
&/dependency&
&dependency&
&groupId&org.openoffice&/groupId&
&artifactId&juh&/artifactId&
&version&3.0.1&/version&
&/dependency&
&dependency&
&groupId&org.openoffice&/groupId&
&artifactId&unoil&/artifactId&
&version&3.0.1&/version&
&/dependency&
&dependency&
&groupId&org.slf4j&/groupId&
&artifactId&slf4j-jdk14&/artifactId&
&version&1.4.3&/version&
&/dependency&
Maven只有 2.2.1版本,2.2.1版本有一个问题,那就是不兼容docx和pptx,如果你们不使用jodconverter-2.2.2 中lib,而想要使用2.2.1版本,需要修改一下 BasicDocumentFormatRegistry 类中的 getFormatByFileExtension方法:
新建包 com.artofsolving.jodconverter
新建类BasicDocumentFormatRegistry,复制下面代码
package com.artofsolving.
* @author 李文浩
import java.util.ArrayL
import java.util.I
import java.util.L
public class BasicDocumentFormatRegistry implements DocumentFormatRegistry {
private List documentFormats = new ArrayList();
public BasicDocumentFormatRegistry() {
public void addDocumentFormat(DocumentFormat documentFormat) {
this.documentFormats.add(documentFormat);
protected List getDocumentFormats() {
return this.documentFormats;
public DocumentFormat getFormatByFileExtension(String extension) {
if (extension == null) {
return null;
if (extension.indexOf("doc") &= 0) {
extension = "doc";
if (extension.indexOf("ppt") &= 0) {
extension = "ppt";
if (extension.indexOf("xls") &= 0) {
extension = "xls";
String lowerExtension = extension.toLowerCase();
Iterator it = this.documentFormats.iterator();
if (!it.hasNext()) {
return null;
format = (DocumentFormat)it.next();
} while(!format.getFileExtension().equals(lowerExtension));
public DocumentFormat getFormatByMimeType(String mimeType) {
Iterator it = this.documentFormats.iterator();
if (!it.hasNext()) {
return null;
format = (DocumentFormat)it.next();
} while(!format.getMimeType().equals(mimeType));
下面是增加的部分,仅仅增加了将docx按照doc的处理方式处理。而2.2.2版本已经默认增加了。
if (extension.indexOf("doc") &= 0) {
extension = "doc";
if (extension.indexOf("ppt") &= 0) {
extension = "ppt";
if (extension.indexOf("xls") &= 0) {
extension = "xls";
参考文档:
阅读(...) 评论()Java如何将Word文件转成PDF文件_百度知道
Java如何将Word文件转成PDF文件
我有更好的答案
text.Document对象的实例。Document document = new Document().open();④向文档中添加内容。②建立一个书写器(Writer)与document对象关联;Hello World&, new FileOutputStream(&⑤关闭文档.add(new Paragraph(&quot.PDF的文件,文件内容为&quot用Java内嵌iText生成PDF文档需要5个步骤:①建立));③打开文档。document.Hello World&))。document.close();通过上面的5个步骤,就能产生一个Helloworld,通过书写器(Writer)可以将文档写入到磁盘中。PDFWriter.getInstance(Helloworld.PDF&quot
采纳率:85%
用SWFTools转成pdf再用flexpaper阅读
为您推荐:
其他类似问题
您可能关注的内容
word文件的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。

我要回帖

更多关于 pdf文件转换成word 的文章

 

随机推荐