java/word+fusionchart生成圖表深入分析
更新時間:2012年11月27日 09:37:13 作者:
本文將以java/word+fusionchart生成圖表問題深入解析,有興趣的朋友可以參考下
一個朋友的項目里用到了fusionchart,同時需要提供多個報表的word下載功能。
毫無疑問,只是一個很棘手的問題。
fusionchart提供了服務(wù)端和客戶端生成圖片的功能,都是基于client端展示了flash以后做的。
朋友的項目是基于linux的,office本身的那套com機制是沒辦法通過jacob調(diào)用了。
純java的操作word,POI和docx4j,可以生成word文檔,table,插入圖片。
一個可行的思路是點擊下載報表時,先在一個新頁面打開各個flash的圖表,再依次調(diào)用fusoinchart的功能在服務(wù)器端生成圖片,
最后js再調(diào)用servlet生成doc,同時把上一步生成的各個圖片插入到文檔內(nèi)。
這個曲線救國的策略性能非常低下,。
第二個想法是直接在word中插入flash,作為ole到word中的形式,同時跟其他內(nèi)容混排。這個方式應(yīng)該性能應(yīng)該是ok的,由word打開后去實時渲染flash。
但是發(fā)現(xiàn)word如果使用OLE doc的方式,不能使用HWPF了,只能自己一點點的拼BIFF文件,這實在不好做,而且還不知道OLE進去了能不能展示。
放棄之。PS:發(fā)現(xiàn)WSPH處理ppt的功能里有對ActiveX的簡單支持。。。我去。。
第三個想法是拿到生成chart的數(shù)據(jù),直接用office的圖表功能,可惜的是發(fā)現(xiàn)HWPF里沒有這功能,HSSF處理excel的功能里才有。
最后一個方法比較簡單可行,性能尚可,后臺用jfreechart生成圖片,然后生成word文檔。
壞處是,圖表風格跟fusion不一致。jfree太丑了。但是這個方法是目前能想到最合適的方法了。
毫無疑問,只是一個很棘手的問題。
fusionchart提供了服務(wù)端和客戶端生成圖片的功能,都是基于client端展示了flash以后做的。
朋友的項目是基于linux的,office本身的那套com機制是沒辦法通過jacob調(diào)用了。
純java的操作word,POI和docx4j,可以生成word文檔,table,插入圖片。
一個可行的思路是點擊下載報表時,先在一個新頁面打開各個flash的圖表,再依次調(diào)用fusoinchart的功能在服務(wù)器端生成圖片,
最后js再調(diào)用servlet生成doc,同時把上一步生成的各個圖片插入到文檔內(nèi)。
這個曲線救國的策略性能非常低下,。
第二個想法是直接在word中插入flash,作為ole到word中的形式,同時跟其他內(nèi)容混排。這個方式應(yīng)該性能應(yīng)該是ok的,由word打開后去實時渲染flash。
但是發(fā)現(xiàn)word如果使用OLE doc的方式,不能使用HWPF了,只能自己一點點的拼BIFF文件,這實在不好做,而且還不知道OLE進去了能不能展示。
放棄之。PS:發(fā)現(xiàn)WSPH處理ppt的功能里有對ActiveX的簡單支持。。。我去。。
第三個想法是拿到生成chart的數(shù)據(jù),直接用office的圖表功能,可惜的是發(fā)現(xiàn)HWPF里沒有這功能,HSSF處理excel的功能里才有。
最后一個方法比較簡單可行,性能尚可,后臺用jfreechart生成圖片,然后生成word文檔。
壞處是,圖表風格跟fusion不一致。jfree太丑了。但是這個方法是目前能想到最合適的方法了。
您可能感興趣的文章:
- java使用POI實現(xiàn)html和word相互轉(zhuǎn)換
- Java使用poi將word轉(zhuǎn)換為html
- java實現(xiàn)word文件轉(zhuǎn)html文件
- java導出生成word的簡單方法
- java使用poi讀取ppt文件和poi讀取excel、word示例
- 實例講解Java讀取一般文本文件和word文檔的方法
- 使用Java讀取Word文件的簡單例子分享
- java使用Jsoup組件生成word文檔
- java簡單操作word實例
- Java用freemarker導出word實用示例
- Java實現(xiàn)將word轉(zhuǎn)換為html的方法示例【doc與docx格式】
相關(guān)文章
java中 利用正則表達式提取( )內(nèi)內(nèi)容
本篇文章,小編為大家介紹關(guān)于java中 利用正則表達式提取( )內(nèi)內(nèi)容,有需要的朋友可以參考一下2013-04-04
Spring Security CsrfFilter過濾器用法實例
這篇文章主要介紹了Spring Security CsrfFilter過濾器用法實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-11-11

