站長資訊網
        最全最豐富的資訊網站

        怎么實現php在線演示功能

        php在線演示功能的實現方法:1、將其他格式的文檔通過OpenOffice轉換成PDF格式文檔;2、通過swftools將PDF格式文檔轉換為swf格式文檔;3、通過flexpaper顯示swf格式的文檔,從而實現預覽多種格式的文檔即可。

        怎么實現php在線演示功能

        本文操作環境:Windows7系統、PHP7.1版,DELL G3電腦

        怎么實現php在線演示功能?

        Windows下實現php在線預覽功能

        最近用到文檔在線預覽功能,之前沒接觸過,一切從零開始,整了一段時間終于實現,現在把方法分享給大家!

        一、主要思路

          先將其他格式的文檔(office文檔、txt、圖片等等)通過OpenOffice轉換成PDF格式文檔,然后通過swftools(http://www.swftools.org/)將PDF格式文檔轉換為swf格式文檔,最后通過flexpaper顯示swf格式的文檔,從而實現預覽多種格式的文檔。

          使用到的工具自己從網上下載,很好找的。

        二、實現過程

          1.其他文檔轉為PDF

           用命令啟動OpenOffice:

              運行->cmd,輸入下面的命令

        cd /d E:/openoffice/program & soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard

              或者在cmd中進入program目錄,然后輸入

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

           php實現代碼:     

         set_time_limit(0);                           function MakePropertyValue($name,$value,$osm){                                  $oStruct = $osm->Bridge_GetStruct("com.sun.star.beans.PropertyValue");                                  $oStruct->Name = $name;                                  $oStruct->Value = $value;                                  return $oStruct;                          }                          function word2pdf($doc_url, $output_url){                                $osm = new COM("com.sun.star.ServiceManager") or die ("Please be sure that OpenOffice.org is installed.n");                                $args = array(MakePropertyValue("Hidden",true,$osm));                                $oDesktop = $osm->createInstance("com.sun.star.frame.Desktop");                                $oWriterDoc = $oDesktop->loadComponentFromURL($doc_url,"_blank", 0, $args);                                $export_args = array(MakePropertyValue("FilterName","writer_pdf_Export",$osm));                                $oWriterDoc->storeToURL($output_url,$export_args);                                $oWriterDoc->close(true);                          }                         $doc_file = 'D:/wamp/www/onlineread/uploads/docfile.doc';                          $output_file = 'D:/wamp/www/onlineread/uploads/pdffile.pdf';                         $doc_file = "file:///" . $doc_file;                          $output_file = "file:///" . $output_file;                        word2pdf($doc_file,$output_file);

          2.PDF轉換為swf并顯示

           php實現代碼:

        <div style="width:100%;height:800px;display:block;margin-left: auto;margin-right: auto; margin-top: 20px;">          <a id="viewerPlaceHolder" style="width:100%;height:800px;display:block;"></a>            <script type="text/javascript">            var path="/<?=$convert?>";//調用php的變量,如果不能實現可考慮下一句的寫法            //var path="/<?php echo $convert?>";              var fp = new FlexPaperViewer(              '__PUBLIC__/FlexPaper/FlexPaperFlash/FlexPaperViewer',              'viewerPlaceHolder', { config : {//配置參數,可自行修改成自己想要的                SwfFile : escape(path),                Scale : 1,                ZoomTransition : 'easeOut',                ZoomTime : 0.5,                ZoomInterval : 0.2,                FitPageOnLoad : false,                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: 'en_US'            }});          </script>        </div>

          3.運行前的準備

           需要先進行如下的設置,否則運行過程中可能會出錯!

           控制面板-管理工具-組件服務-計算機-我的電腦-DOCM配置,找到OpenOffice Service Manager(Ver 1.0)右鍵屬性,按下圖所示進行配置:

                        如下圖所示找到OpenOffice Service Manager(Ver 1.0):

        怎么實現php在線演示功能

                          在彈出框中選擇‘安全’,分別編輯‘啟動和激活權限’和‘訪問權限’:

        怎么實現php在線演示功能

                           在‘啟動和激活權限’彈出框中點擊添加,輸入Everyone:

        怎么實現php在線演示功能

                          設置Everyone的權限:

        怎么實現php在線演示功能

                          在‘訪問權限’的彈出框中點擊添加,輸入Everyone:

                        怎么實現php在線演示功能

                         設置Everyone權限:

        怎么實現php在線演示功能

                          在屬性對話框中選擇‘標識’,選擇‘交互式用戶’:

          怎么實現php在線演示功能

           如果遇到COM類實例化失敗的問題,打開php配置文件,去掉com.allow_dcom=true前面的分號,并添加extension=php_com_dotnet.dll,因為php5.4以后就不內嵌com了。

           設置好后不要忘記重啟服務哦!

           推薦學習:《PHP視頻教程》

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 人妻偷人精品成人AV| 亚洲精品无码永久在线观看你懂的| 久久国产美女免费观看精品| 精品福利一区二区三区免费视频 | 久久久亚洲精品蜜桃臀| 国产在线精品网址你懂的| 亚洲av成人无码久久精品| 国产精品一区二区三区免费| 国产精品日本欧美一区二区| 精品午夜福利在线观看| 亚洲乱码国产乱码精品精| 精品伦精品一区二区三区视频 | 精品少妇一区二区三区视频| 日韩精品无码专区免费播放| 久久精品国产精品亚洲下载| 99精品视频在线观看婷| 麻豆精品成人免费国产片| 国内精品久久人妻互换| 无码国产精品一区二区免费模式| 夜夜爽一区二区三区精品| 欧美人与性动交α欧美精品成人色XXXX视频 | 久久久久国产精品三级网| 国产一区麻豆剧传媒果冻精品| 91精品国产91久久久久久蜜臀| 国产精品污视频| 麻豆精品久久精品色综合| 国产精品免费网站| 久久精品国产精品青草| 久久精品成人国产午夜| 秋霞午夜鲁丝片午夜精品久| 精品福利一区二区三| 久久久久免费精品国产| 国产精品极品美女自在线观看免费| 国产精品va无码一区二区| 久久精品人人槡人妻人人玩AV| 四虎国产精品永久免费网址| 亚洲第一区精品观看| 亚洲精品国精品久久99热| 自拍偷在线精品自拍偷| 乱精品一区字幕二区| 国产l精品国产亚洲区在线观看 |