PDF解決方案(1)--文件上傳javascript
PDF解決方案(4)--在線瀏覽java
前言:上一篇主要提到了PDF在線瀏覽的各類方案的優劣和如何把PDF轉換爲SWF文件,這一篇主要介紹SWF文件的在線瀏覽。jquery
SWF在線瀏覽選擇的是FlexPaper,一個輕量級的開源(又是開源,開源萬歲!)組件,能夠在瀏覽器中顯示各類文檔。瀏覽器
下載地址:http://flexpaper.devaldi.com/工具
在本身的頁面中引入FlexPaper的JS和CSS文件以及jquery文件,在頁面中定義一個DIV使用FlexPaperViewer方法指定swf文件路徑和其它參數渲染這個div就能夠了,FlexPaper的使用比較簡單就再也不詳細描述了,代碼以下:學習
<head> <link rel="stylesheet" type="text/css" href="js/FlexPaper/css/flexpaper.css"> <script type="text/javascript" src="js/jquery-1.8.0.min.js"></script> <script type="text/javascript" src="js/FlexPaper/js/flexpaper.js"></script> <script type="text/javascript" src="js/FlexPaper/js/flexpaper_handlers.js"></script> </head> <body> <div style="position: absolute; left: 10px; top: 10px;"> <div id="documentViewer" class="flexpaper_viewer"></div> <script type="text/javascript"> var swfPath = "<%=basePath %>"; (function getSwfPath() { swfPath += ("file/upload/" + Request("path")); initViewer(); })(window); function Request(argname) { var url = document.location.href; var arrStr = url.substring(url.indexOf("?") + 1).split("&"); for (var i = 0; i < arrStr.length; i++) { var loc = arrStr[i].indexOf(argname + "="); if (loc != -1) { return arrStr[i].replace(argname + "=", "").replace("?", ""); break; } } return ""; } function initViewer() { $('#documentViewer').FlexPaperViewer( { config : { SWFFile : swfPath,//swf文件路徑 //FitPageOnLoad : true,//自適應頁面 FitWidthOnLoad : true,//自適應寬度 InitViewMode : 'Portrait',//啓動模式 RenderingOrder : 'flash',// StartAtPage : '',//初始化頁面,默認首頁 jsDirectory : '<%=path + "/js/FlexPaper/js/"%>',//FlexPaper js路徑 WMode : 'window', localeChain: 'zh_CN'//語言 } }); $('#documentViewer').width($('body').width()-20); $('#documentViewer').height($('body').height()-20); } </script> </body>
FlexPaper配置有不少參數,這裏有參數的中文介紹,能夠用來參考:http://ajava.org/article-685-1.htmlflex
這個專題主要介紹了PDF相關的文件處理,包括文件上傳,文件轉換爲PDF,PDF轉換爲SWF,SWF的在線瀏覽,其中用到openoffice、itext、xpdf、swftools、FlexPaper等開源工具和jar包,這些工具都很是的強大提供了不少的功能,這裏用到的只是其中很小很簡單的功能,供你們參考吧!url
做文是個人硬傷,常常抓不住重點,辭不達意,本末倒置,這幾篇文章也寫的很吃力,不知道如何把本身想表達的意思表述情書,全部文中會頗有多說了一堆很是卻沒講到點子上的狀況,歡迎你們批評指正,互相學習!
PDF解決方案demo: http://pan.baidu.com/s/1i3mmwux
swftools、xpdf:http://pan.baidu.com/s/1dDu1Yoh(注:解壓放在C盤根目錄便可)