Java仿文庫的基本方法(openoffice+swftools+flexPaper)
Java仿文庫的基本方法
基本步驟:
1、將要展示的office文件 轉(zhuǎn)換成 PDF, 使用工具 openoffice
2、將PDF文件轉(zhuǎn)換成swf ,實(shí)用工具swftools
3、使用flexPaper,顯示轉(zhuǎn)換后的swf文件。
基礎(chǔ)代碼:沒有任何校驗(yàn)
1、openoffice轉(zhuǎn)換pdf
下載地址:https://www.openoffice.org/zh-cn/
實(shí)用工具: jodconverter-2.2.2 引入所需jar,直接將所有jar都扔進(jìn)來了
首先、下載openOffice軟件,并安裝,使用dos命令開啟服務(wù),就是cmd了,我安裝在了C盤
命令如下:執(zhí)行效果
C:\Program Files (x86)\OpenOffice 4\program>soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard
啟動(dòng)后,執(zhí)行以下命令 doc文件為原始文件,轉(zhuǎn)換成pdf
File inputFile = new File("D:\\大數(shù)據(jù)及應(yīng)用.doc"); File outputFile = new File("D:\\大數(shù)據(jù)及應(yīng)用.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文件,直接安裝,
注:文件夾不要有空格,有空格不識(shí)別 如 program file 文件夾下 不好使
我安裝在了D盤根目錄下,該方法來源于網(wǎng)絡(luò),資料找的太多不記得從哪位大俠哪拷來得了,
還要注意下面代碼被我改成windows的命令了,linux不生效。
public static int convertPDF2SWF(String sourcePath, String destPath, String fileName) throws IOException { //目標(biāo)路徑不存在則建立目標(biāo)路徑 File dest = new File(destPath); if (!dest.exists()) dest.mkdirs(); //源文件不存在則返回 File source = new File(sourcePath); if (!source.exists()) return 0; //調(diào)用pdf2swf命令進(jìn)行轉(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', <!--對應(yīng)于a 標(biāo)簽的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' <!--改成這個(gè)顯示中文--> }}); </script> </div>
執(zhí)行效果:
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Java使用openOffice對于word的轉(zhuǎn)換及遇到的問題解決
- linux環(huán)境下安裝 openOffice 并啟動(dòng)服務(wù) 的方法
- Java利用openoffice將doc、docx轉(zhuǎn)為pdf實(shí)例代碼
- java調(diào)用openoffice將office系列文檔轉(zhuǎn)換為PDF的示例方法
- Java實(shí)現(xiàn)在線預(yù)覽的示例代碼(openOffice實(shí)現(xiàn))
- PHP調(diào)用OpenOffice實(shí)現(xiàn)word轉(zhuǎn)PDF的方法
- 解決linux下openoffice word文件轉(zhuǎn)PDF中文亂碼的問題
- java實(shí)現(xiàn)附件預(yù)覽(openoffice+swftools+flexpaper)實(shí)例
- 通過openOffice將office文件轉(zhuǎn)成pdf
相關(guān)文章
jvm調(diào)優(yōu)的幾種場景(小結(jié))
本文主要介紹了jvm調(diào)優(yōu)的幾種場景,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01java+jsp+struts2實(shí)現(xiàn)發(fā)送郵件功能
這篇文章主要為大家詳細(xì)介紹了java+jsp+struts2實(shí)現(xiàn)發(fā)送郵件功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03解析springboot集成AOP實(shí)現(xiàn)日志輸出的方法
如果這需要在每一個(gè)controller層去寫的話代碼過于重復(fù),于是就使用AOP定義切面 對其接口調(diào)用前后進(jìn)行攔截日志輸出。接下來通過本文給大家介紹springboot集成AOP實(shí)現(xiàn)日志輸出,需要的朋友可以參考下2021-11-11Spring?Boot?+?EasyExcel實(shí)現(xiàn)數(shù)據(jù)導(dǎo)入導(dǎo)出
這篇文章主要介紹了Spring?Boot+EasyExcel實(shí)現(xiàn)數(shù)據(jù)導(dǎo)入導(dǎo)出,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下2022-08-08減小Maven項(xiàng)目生成的JAR包體積實(shí)現(xiàn)提升運(yùn)維效率
在Maven構(gòu)建Java項(xiàng)目過程中,減小JAR包體積可通過排除不必要的依賴和使依賴jar包獨(dú)立于應(yīng)用jar包來實(shí)現(xiàn),在pom.xml文件中使用<exclusions>標(biāo)簽排除不需要的依賴,有助于顯著降低JAR包大小,此外,將依賴打包到應(yīng)用外,可減少應(yīng)用包的體積2024-10-10解決springboot?部署到?weblogic?中?jar?包沖突的問題
這篇文章主要介紹了springboot?部署到?weblogic?中?jar?包沖突,weblogic?也有是解決方案的,可以通過新增并配置?weblogic.xml?文件來定義哪些類需要優(yōu)先從項(xiàng)目工程包的?jar?包中加載,本文給大家分享解決方法,需要的朋友可以參考下2022-08-08