最近系統需要一個office文件預覽功能
解決方案為使用libreoffice將office文件轉換為pdf文件,然后使用swftools將pdf文件轉換為swf文件
最后在前台使用flexpaper瀏覽swf文件,即可實現預覽
環境搭建完成,轉換也沒有問題,但是預覽效果看到所有中文全部為亂碼
下載轉換后的pdf文件也是亂碼,由此可見時libreoffice轉換這一步出現了問題
服務器轉換文件亂碼主要是由於沒有中文字體導致的,我在ubuntu desktop系統下使用libreoffice打開office文件
發現中文字體大多默認使用的是 Droid Sans Fallback這個字體
對應字體目錄是 /usr/share/fonts/truetype/droid/DroidSansFallbackFull.ttf這個文件
將字體文件拷貝到服務器的 /usr/share/fonts/truetype/droid 目錄下
然后安裝字體
sudo mkfontscale
sudo mkfontdir
再次生成pdf和swf文件已經是中文沒有亂碼