JasperReports的常用的部分已經說得差不多了,不過使用上有滿多值得大家注意的小地方。
對齊元素這件事算是最常碰到也不容易察覺到的問題,以下面這個模板為例,當我們的Static text或Text Field沒有使用邊框時,即使我已經把某欄位的長度調整少了1px,也很難馬上看的出來。
在有使用邊框的情況下才比較能看得出差異:
那沒對齊有什麼關係嗎?與其他檔案類型比起來,對Excel的影響最大,我們可以看到JasperReports對長度的差異非常敏銳,Excel上的直行從A、B,直接跳到D,這對於要使用公式的使用者非常不方便。
但是當我們本來就沒有要加邊框時,建議:
元素與Band的高度沒對齊的話,在Excel檔上面也有像直行跳行一樣,會有跳列的情況發生。我們在放置元素到模板之後,通常元素的高度比較小(如下圖的Summary Band與parameter參數),最後希望Band高度要縮小到與元素相同,但是用滑鼠拉又容易對不齊,怎麼調比較快又準?
同樣是發生在Excel檔上,當元素沒有加上邊框時,匯出的Excel會有白色的背景遮住原有的框線。
如果希望把白色背景消除的話,可以選取所有元素 -> 到右下屬性區域點擊「Edit Properties」 -> 點擊「Add」新增屬性net.sf.jasperreports.export.xls.white.page.background
-> 值設為false
之後匯出的Excel就會看到單元格原本的格線了。
有時候模板做好了,但後續還需要調整,或是從已完成的模板複製出來做成新的模板時,可能有將原先是Static Text的元素換成Text Field、將原先是Text Field的元素換成Static Text的需求發生。
畢竟同樣是顯示文字的元素,如果為了這點改動就要把元素刪除,重新拉一個元素進模板,那大小和位置又要重調,要調整的地方一多就很花時間。
JasperReports也許有想到這點,讓我們能在:
Static Text點右鍵 -> 「Convert To Text Field」
或是 Text Field點右鍵 -> 「Convert To Static Text」
一鍵轉換文字元素,滿實用方便的功能。
除了官方提供的元素外,我們也可以把常用的元素儲存為「Basic Elements」或「Composite Elements」,減少我們重複作業的時間。
將想要儲存的單一元素或複數的元素選取 -> 點右鍵選擇「Save as Composite Elements」
填寫元素名稱、描述,甚至可以上傳自己想要的icon。在「Position in Palette」這欄可以選擇儲存為「Basic Elements」還是「Composite Elements」。
即使在新的模板中,也可以直接拖曳自訂的元素,連元素中的Parameters、Fields、Variables都會存下來,但還是必須在新的模板中新增這些自己的Parameters、Fields、Variables(除非是預設的)。
JasperReports就介紹到這啦,下一篇會開始進入Apache POI的世界了。