基本步骤: 1、将要展示的office文件 转换成 PDF, 使用工具 openoffice 2、将PDF文件转换成swf ,实用工具swftools 3、使用flexPaper,显示转换后的swf文件。 基础代码:没有任何校验 1、openoffice转换pdf 实用工具: jodconverter-2.2.2 引入所需jar,直接将所有jar都扔进来了 首先、下载openOffice软件,并安装,使用dos命令开启服务 命令如下: [size=1em][color=white !important][size=1em] ?
| [size=1em][size=1em]<span>我安装在了 </span>C:\Program Files (x86) 目录下
|
[size=1em][color=white !important][size=1em] ?
| [size=1em][size=1em]C:\Program Files (x86)\OpenOffice 4\program>soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard
|
启动后,执行以下命令 doc文件为原始文件,转换成pdf [size=1em][color=white !important][size=1em] ?
[size=1em]1
[size=1em]2
[size=1em]3
[size=1em]4
[size=1em]5
[size=1em]6
[size=1em]7
[size=1em]8
[size=1em]9
[size=1em]10
[size=1em]11
[size=1em]12
[size=1em]13
| [size=1em][size=1em]File inputFile = new File("D:\\大数据及应用.doc");
[size=1em] File outputFile = new File("D:\\大数据及应用.pdf");
[size=1em] OpenOfficeConnection connection = new SocketOpenOfficeConnection(
[size=1em] "127.0.0.1", 8100);
[size=1em] connection.connect();
[size=1em] // convert
[size=1em] DocumentConverter converter = new OpenOfficeDocumentConverter(
[size=1em] connection);
[size=1em] converter.convert(inputFile, outputFile);
[size=1em] // close the connection
[size=1em] connection.disconnect();
|
2、swftools将PDF转换swf 首先安装swftools工具,我是windows 下载exe文件,直接安装, 注:文件夹不要有空格,有空格不识别 如 program file 文件夹下 不好使 我安装在了D盘根目录下,该方法来源于网络,资料找的太多不记得从哪位大侠哪拷来得了, 还要注意下面代码被我改成windows的命令了,linux不生效。
[size=1em][color=white !important][size=1em] ?
[size=1em]1
[size=1em]2
[size=1em]3
[size=1em]4
[size=1em]5
[size=1em]6
[size=1em]7
[size=1em]8
[size=1em]9
[size=1em]10
[size=1em]11
[size=1em]12
[size=1em]13
[size=1em]14
[size=1em]15
[size=1em]16
[size=1em]17
[size=1em]18
[size=1em]19
[size=1em]20
[size=1em]21
| [size=1em][size=1em]public static int convertPDF2SWF(String sourcePath, String destPath, String fileName) throws IOException {
[size=1em] //目标路径不存在则建立目标路径
[size=1em] File dest = new File(destPath);
[size=1em] if (!dest.exists()) dest.mkdirs();
[size=1em] //源文件不存在则返回
[size=1em] File source = new File(sourcePath);
[size=1em] if (!source.exists()) return 0;
[size=1em] //调用pdf2swf命令进行转换
[size=1em] String command = "D:\\SWFTools\\pdf2swf.exe " + sourcePath + " -o " + destPath + fileName + " -f -T 9 " ;
[size=1em] System.out.println(command);
[size=1em] Process pro = Runtime.getRuntime().exec(command);
[size=1em] BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(pro.getInputStream()));
[size=1em] while (bufferedReader.readLine() != null);
[size=1em] try {
[size=1em] pro.waitFor();
[size=1em] } catch (InterruptedException e) {
[size=1em] // TODO Auto-generated catch block
[size=1em] e.printStackTrace();
[size=1em] }
[size=1em] return pro.exitValue();
[size=1em] }
|
4、flexPaper显示swf jsp代码如下 该文件:FlexPaperViewer.swf
[size=1em][color=white !important][size=1em] ?
[size=1em]1
[size=1em]2
[size=1em]3
[size=1em]4
[size=1em]5
[size=1em]6
[size=1em]7
[size=1em]8
[size=1em]9
[size=1em]10
[size=1em]11
[size=1em]12
[size=1em]13
[size=1em]14
[size=1em]15
[size=1em]16
[size=1em]17
[size=1em]18
[size=1em]19
[size=1em]20
[size=1em]21
[size=1em]22
[size=1em]23
[size=1em]24
[size=1em]25
[size=1em]26
[size=1em]27
[size=1em]28
[size=1em]29
[size=1em]30
[size=1em]31
[size=1em]32
[size=1em]33
[size=1em]34
[size=1em]35
[size=1em]36
[size=1em]37
[size=1em]38
| [size=1em][size=1em]<!--首先要引入jquery库及相关的js 下载包里面 找-->
[size=1em]<script type="text/javascript" src="js/jquery.js"></script>
[size=1em]<script type="text/javascript" src="js/flexpaper_flash.js"></script>
[size=1em]<script type="text/javascript" src="js/flexpaper_flash_debug.js"></script>
[size=1em]body内如下
[size=1em] <div style="position:absolute;left:10px;top:10px;">
[size=1em] <a id="viewerPlaceHolder" style="width:1260px;height:780px;display:block"></a>
[size=1em] <script type="text/javascript">
[size=1em] var fp = new FlexPaperViewer(
[size=1em] 'FlexPaperViewer',
[size=1em] 'viewerPlaceHolder', <!--对应于a 标签的id-->
[size=1em] { config : {
[size=1em] SwfFile : decodeURI('aaa.swf'), <!--引入的swf文件,decodeURI 解决中文文件名问题-->
[size=1em] Scale : 0.6,
[size=1em] ZoomTransition : 'easeOut',
[size=1em] ZoomTime : 0.5,
[size=1em] ZoomInterval : 0.2,
[size=1em] FitPageOnLoad : true,
[size=1em] FitWidthOnLoad : false,
[size=1em] PrintEnabled : true,
[size=1em] FullScreenAsMaxWindow : false,
[size=1em] ProgressiveLoading : false,
[size=1em] MinZoomSize : 0.2,
[size=1em] MaxZoomSize : 5,
[size=1em] SearchMatchAll : false,
[size=1em] InitViewMode : 'Portrait',
[size=1em]
[size=1em] ViewModeToolsVisible : true,
[size=1em] ZoomToolsVisible : true,
[size=1em] NavToolsVisible : true,
[size=1em] CursorToolsVisible : true,
[size=1em] SearchToolsVisible : true,
[size=1em] localeChain: 'zh_CN' <!--改成这个显示中文-->
[size=1em] }});
[size=1em] </script>
[size=1em] </div>
|
执行效果
|