java導出pdf報告之五:poi-tl的使用-圖片模版和列表模版

對於圖片模版和列表模版相對就簡單了,可以參考幫助文檔,下邊我也只做簡單的介紹了

對於文檔中的餅狀圖、柱狀圖,我是在導入數據的時候,直接根據數據生成了相應的圖片,然後保存在文件服務器,並把路徑保存到數據庫中

圖片模版:{{@var}}

BufferedImage picture = ImageIO.read(new FileInputStream(picturePath)); //獲取圖片對象
//設置圖片的大小爲原圖的3/4
reportDatas.put("intestinal_pattern_result", new PictureRenderData(picture.getWidth() * 3 / 4, picture.getHeight() * 3 / 4, picturePath));  

列表模版:{{*var}}

剛開始考慮的參考文獻那裏使用列表模版的,但使用過程中發現poi-tl的列表模版,不能設置隱藏列表項前邊的特殊符號(默認是圓點)。後來就退而求其次,將所有列表項拼成一段文字,每項之間使用\n進行分割

reportDatas.put("ReferenceList",getReferences(references));
//references 參考文獻信息列表
private TextRenderData getReferences(List<ReportReference> list) {
        TextRenderData renderData = new TextRenderData();
        StringBuffer sb = new StringBuffer();
        for (ReportReference reportReference:list) {
            sb.append(reportReference.getContent()+"\n");
        }
        renderData.setText(sb.toString());
        return renderData;
    }

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章