Java仿文庫的基本方法(openoffice+swftools+flexPaper)
Java仿文庫的基本方法
基本步驟:
1、將要展示的office文件 轉(zhuǎn)換成 PDF, 使用工具 openoffice
2、將PDF文件轉(zhuǎn)換成swf ,實用工具swftools
3、使用flexPaper,顯示轉(zhuǎn)換后的swf文件。
基礎代碼:沒有任何校驗
1、openoffice轉(zhuǎn)換pdf
下載地址:https://www.openoffice.org/zh-cn/
實用工具: jodconverter-2.2.2 引入所需jar,直接將所有jar都扔進來了

首先、下載openOffice軟件,并安裝,使用dos命令開啟服務,就是cmd了,我安裝在了C盤
命令如下:執(zhí)行效果
C:\Program Files (x86)\OpenOffice 4\program>soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard
啟動后,執(zhí)行以下命令 doc文件為原始文件,轉(zhuǎn)換成pdf
File inputFile = new File("D:\\大數(shù)據(jù)及應用.doc");
File outputFile = new File("D:\\大數(shù)據(jù)及應用.pdf");
OpenOfficeConnection connection = new SocketOpenOfficeConnection(
"127.0.0.1", 8100);
connection.connect();
// convert
DocumentConverter converter = new OpenOfficeDocumentConverter(
connection);
converter.convert(inputFile, outputFile);
// close the connection
connection.disconnect();
2、swftools將PDF轉(zhuǎn)換swf
下載地址:http://www.swftools.org/download.html
首先安裝swftools工具,我是windows 下載exe文件,直接安裝,
注:文件夾不要有空格,有空格不識別 如 program file 文件夾下 不好使
我安裝在了D盤根目錄下,該方法來源于網(wǎng)絡,資料找的太多不記得從哪位大俠哪拷來得了,
還要注意下面代碼被我改成windows的命令了,linux不生效。
public static int convertPDF2SWF(String sourcePath, String destPath, String fileName) throws IOException {
//目標路徑不存在則建立目標路徑
File dest = new File(destPath);
if (!dest.exists()) dest.mkdirs();
//源文件不存在則返回
File source = new File(sourcePath);
if (!source.exists()) return 0;
//調(diào)用pdf2swf命令進行轉(zhuǎn)換
String command = "D:\\SWFTools\\pdf2swf.exe " + sourcePath + " -o " + destPath + fileName + " -f -T 9 " ;
System.out.println(command);
Process pro = Runtime.getRuntime().exec(command);
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(pro.getInputStream()));
while (bufferedReader.readLine() != null);
try {
pro.waitFor();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return pro.exitValue();
}
4、flexPaper顯示swf
下載地址:http://static.devaldi.com/GPL/FlexPaper_2.2.4.zip
jsp代碼如下
該文件:FlexPaperViewer.swf
<!--首先要引入jquery庫及相關(guān)的js 下載包里面 找--> <script type="text/javascript" src="js/jquery.js"></script> <script type="text/javascript" src="js/flexpaper_flash.js"></script> <script type="text/javascript" src="js/flexpaper_flash_debug.js"></script>
body內(nèi)如下
<div style="position:absolute;left:10px;top:10px;">
<a id="viewerPlaceHolder" style="width:1260px;height:780px;display:block"></a>
<script type="text/javascript">
var fp = new FlexPaperViewer(
'FlexPaperViewer',
'viewerPlaceHolder', <!--對應于a 標簽的id-->
{ config : {
SwfFile : decodeURI('aaa.swf'), <!--引入的swf文件,decodeURI 解決中文文件名問題-->
Scale : 0.6,
ZoomTransition : 'easeOut',
ZoomTime : 0.5,
ZoomInterval : 0.2,
FitPageOnLoad : true,
FitWidthOnLoad : false,
PrintEnabled : true,
FullScreenAsMaxWindow : false,
ProgressiveLoading : false,
MinZoomSize : 0.2,
MaxZoomSize : 5,
SearchMatchAll : false,
InitViewMode : 'Portrait',
ViewModeToolsVisible : true,
ZoomToolsVisible : true,
NavToolsVisible : true,
CursorToolsVisible : true,
SearchToolsVisible : true,
localeChain: 'zh_CN' <!--改成這個顯示中文-->
}});
</script>
</div>
執(zhí)行效果:

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
- Java使用openOffice對于word的轉(zhuǎn)換及遇到的問題解決
- linux環(huán)境下安裝 openOffice 并啟動服務 的方法
- Java利用openoffice將doc、docx轉(zhuǎn)為pdf實例代碼
- java調(diào)用openoffice將office系列文檔轉(zhuǎn)換為PDF的示例方法
- Java實現(xiàn)在線預覽的示例代碼(openOffice實現(xiàn))
- PHP調(diào)用OpenOffice實現(xiàn)word轉(zhuǎn)PDF的方法
- 解決linux下openoffice word文件轉(zhuǎn)PDF中文亂碼的問題
- java實現(xiàn)附件預覽(openoffice+swftools+flexpaper)實例
- 通過openOffice將office文件轉(zhuǎn)成pdf
相關(guān)文章
解決多模塊項目中Mybatis的Mapper內(nèi)部方法找不到的問題
這篇文章主要介紹了解決多模塊項目中Mybatis的Mapper內(nèi)部方法找不到的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-11-11
SpringBoot開發(fā)存儲服務器實現(xiàn)過程詳解
這篇文章主要為大家介紹了SpringBoot開發(fā)存儲服務器實現(xiàn)過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-12-12
解決java數(shù)值范圍以及float與double精度丟失的問題
下面小編就為大家?guī)硪黄鉀Qjava數(shù)值范圍以及float與double精度丟失的問題。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-06-06

