第一種就是比較傳統的,但很多前輩都說相容性是最好的,那就是基於flash的預覽方案,具體方式就是把word轉成swf,並藉助於flexPaper在網頁上實現預覽。我並不是很喜歡這種,原因是這種方式無法讓使用者對顯示出來的內容進行操作,例如複製!
採用此方案的系統目前是豆丁。
第二種我比較中意,就是把word轉成html,這樣就可以告別flash了!目前百度文庫的做法就是這種~不僅支援使用者直接複製內容,而且感覺自由度更大,不過需要自己開發實現的東西也更多!
安裝openoffice
第一步:
下載Apache_OpenOffice_4.1.0_Linux_x86_install-rpm_zh-CN.tar.gz
第二步: 頁建立目錄,m
將下載的檔案放在所建置的目錄下
第四步:
執行指令: tar –zxvf Apache_OpenOffice_4.1.0_Linux_x86_install-rpm_zh-CN.tar.gz
後進入第五步,再進入RPMS資料夾,指令rpm –ivh *.rpm
第六步:
進入RPMS資料夾下的desktop-integration資料夾
第七步:
指令rpm –ivh openoffice.org4.1-redhat -menus-4.1-9764.noarch.rpm
第八步:
啟動:/usr/lib/soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard &
jodconverter doc轉成pdf或html
下載網址:http://pan.baidu.com/s/1ntzkuWL
java -jar /opt/jodconverter-2.2.2/lib/jodconverter-cli-2.2.2.jar / home/php/1.doc /home/php/1.pdf
因為jodconverter是透過openoffice來做轉換的,所以使用前需要先安裝OpenOffice, 並且將OpenOffice的Service啟動, 才可以使用
安裝之後可以實作pdf檔轉換成swf
wget http://www.swftools.org/swftools-0.9.1.tar.gz
tar xzf swftools-0.9.1.tar.gz
cd swftools-0.9. ./configure
make
make install
測試是否可以使用
pdf2swf -o /home/php/1.swf -T -z -t -f /home/php/1.pdf -s flashversion=9 t: 來源檔案路徑,即待轉換的pdf檔路徑。
-s: 設定參數,這裡我們設定為 flashversion=9 ,也就是可以轉換為9的版本啦。
-o: 輸出檔案的路徑
用FlexPaper實現線上預覽,裡面有詳細的demo。
使用php測試文件轉換指令:
文件轉pdf
$doc = './docs/test.txt';
$formatName = './pdf/test.pdf';
$command = 'java -jar / opt/jodconverter-2.2.2/lib/jodconverter-cli-2.2.2.jar '.$doc.' '.$formatName;
exec($command);
echo 'ok';
推薦$pdf = './pdf/test.pdf';
$swf = './swf/test.swf';
$command = '/usr/local/wenku/swftools-0.9.1/src/pdf2swf - o '.$swf.' -T -z -t -f '.$pdf.' -s flashversion=9';
exec($command);
echo 'ok';
php腳本去執行上面的命令可能存在權限的問題無法執行
其中我測試使用的php腳本調用pdf2swf進行轉換文件,生成不了。這樣只需設定apache的使用者權限即可,確保設定的使用者有權限執行pdf2swf指令
預設安裝的php環境ubuntu下設定檔是/etc/apache2/apache2.conf修改這兩行,
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_USER}
配置完之後,重新啟動apache。
/etc/init.d/apache2 restart
到此linux下的安裝設定就結束了。