在线预览word文档

采用方法是将word->pdf->swf,之后用swfobject在线预览swf文件。
下面是必备环境:
a.       如果windows里没有安装OpenOffice,先安装该软件,该软件是与该文档相同目录下的OpenOffice_3.3.0_Win_x86_install-wJRE_zh-CN.exe。

b.       如果windows里没有安装Pdf2swf,先安装该软件,该软件是在该文档相同目录下的swftools-0.9.1.exe。在环境变量的系统变量里添加swftools的路径,如下图:

c.       用cmd打开cmd.exe,在下面输入如下命令来启动openOffice:

cd C:\Program Files\OpenOffice.org 3\program

soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard

另外自己借助于openoffice和jodconverter以及swftools写了一个小Java程序,将pdf->swf。

接下来是使用swfobject:

<span style="font-size:18px;"><%@ page contentType="text/html;charset=UTF-8" language="java" import="java.util.*" %>  
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">  
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">  
    <head>  
        <title>系统使用文档在线浏览</title>  
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />  
<script type="text/javascript" src="src/swfobject.js"></script>    
<script type="text/javascript">  
          
        var flashvars = {   
              SwfFile : "src/handle.swf",  
                  Scale : 0.6,   
                  ZoomTransition : "easeOut",  
                  ZoomTime : 0.5,  
                  ZoomInterval : 0.1,  
                  FitPageOnLoad : true,  
                  FitWidthOnLoad : true,  
                  PrintEnabled : true,  
                  FullScreenAsMaxWindow : true,  
                  ProgressiveLoading : true,  
                  localeChain: "en_US"  
                  };   
        var params = {  
                      
            }  
     params.quality = "high";  
     params.bgcolor = "#ffffff";  
     params.allowscriptaccess = "sameDomain";  
     params.allowfullscreen = "true";  
        swfobject.embedSWF("FlexPaperViewer.swf", "myContent", "100%", "100%", "9.0.0", "expressInstall.swf",flashvars,params);  
          
          
</script>  
    </head>  
    <body style="margin:20px 50px 10px 50px;height:800px;">  
    <form id="saveForm" name="saveForm" action="${ctxPath}SysHelpAction.do?method=download" method="post">  
        <div id="download" >  
            <input type="button" class="nor_button" value="下载" οnclick="submitForm('saveForm','${ctxPath}SysHelpAction.do?method=download')"/>              
        </div>  
    </form>  
    <div id="myContent">  
                      
    </div>  
      
    </body>  
</html>  </span>


可以使用Apache POI和Aspose.Words这两个Java库来实现在线预览Word文档的功能。 Apache POI是一个用于读取、创建和修改Microsoft Office格式文件(如Word、Excel和PowerPoint)的Java库。可以使用它来读取Word文档内容并将其转换为HTML格式,然后通过浏览器进行在线预览。 Aspose.Words是一个专门用于处理Word文档的Java库,它可以将Word文档转换为HTML格式或PDF格式,然后通过浏览器进行在线预览。 以下是使用Apache POI和Aspose.Words实现在线预览Word文档的示例代码: 1. 使用Apache POI将Word文档转换为HTML格式: ```java import java.io.*; import org.apache.poi.hwpf.*; import org.apache.poi.hwpf.extractor.*; import org.jsoup.Jsoup; import org.jsoup.nodes.Document; public class WordToHtmlConverter { public static void main(String[] args) throws Exception { // 读取Word文档内容 FileInputStream fis = new FileInputStream(new File("test.doc")); HWPFDocument doc = new HWPFDocument(fis); WordExtractor extractor = new WordExtractor(doc); String content = extractor.getText(); // 将Word文档内容转换为HTML格式 Document html = Jsoup.parse(content); String htmlContent = html.html(); System.out.println(htmlContent); } } ``` 2. 使用Aspose.Words将Word文档转换为HTML格式: ```java import com.aspose.words.*; public class WordToHtmlConverter { public static void main(String[] args) throws Exception { // 加载Word文档 Document doc = new Document("test.doc"); // 将Word文档转换为HTML格式 HtmlSaveOptions options = new HtmlSaveOptions(); doc.save("test.html", options); // 读取HTML文件内容 FileInputStream fis = new FileInputStream(new File("test.html")); byte[] data = new byte[fis.available()]; fis.read(data); String htmlContent = new String(data); System.out.println(htmlContent); } } ``` 需要注意的是,以上示例代码仅供参考,实际使用时可能需要根据具体情况进行修改。
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值