การที่ลาก elements ของ JasperReports อย่าง Text Field หรือ Static Text แล้วต้องมากำหนดให้ใช้ fonts เป็น Arial ขนาด 8 ตัวอักษรสีดำ 30 จุด มันถึกและเสียเวลามากเกินไป เลยหาวิธีใหม่ มาเทียบกับตอนที่ทำเว็บดู เราใช้คำสั่ง css โดยกำหนด
1 2 3 4 5 6 | <style> * { color:#c00000; font: 8px arial; } </style> |
หรือ
1 2 3 4 5 6 | <style> body { color:#c00000; font: 8px arial; } </style> |
เป็น default style แค่นี้ก็เปลี่ยนการแสดงผลได้ทั้งหน้าแล้ว jasper report ก็น่าจะทำได้เช่นกัน
เมื่อเราหากันจนเจอ วิธีก็ไม่ได้ยากเลย
- ไปที่ Outline คลิกขวาตรง Styles เลือก Create Style
- ไปที่ Properties ตั้งชื่อ style ที่ต้องการ เช่น *
- เลือก Font, Font Size และสี forecolor ตามที่ต้องการ
- ที่ tab Style ใน Properties จะเห็นว่ามี checkbox ชื่อ Default Style ติ๊กเลยครับ นี่ละที่ชาติต้องการ
- ลาก Text Field หรือ Static Text มาเป็นตัวอย่าง แลัว Preview ดู
เท่านี้เราก็สามารถกำหนดให้ jasper report แสดง style ได้เป็นค่าเริ่มต้นโดยที่ไม่ต้องกำหนดทีละตัว ที่ละจุดให้เสียเวลาอีกต่อไปแล้ว สังเกตใน Source จะมี xml เพิ่มขึ้นมาประมาณ
Default Style
1 | < style name = "*" fontName = "Arial" fontSize = "8" forecolor = "#000000" hTextAlign = "Left" isDefault = "true" vTextAlign = "Top" /> |
เราสามารถ copy ไปวางใน report อื่นๆ จะได้ไม่ต้องมาเซ็ตทุกๆ รีพอร์ตเหมือนกัน ส่วนใครสงสัยว่า attribute ไหนคืออะไรอ่านได้จาก Report Styles
About the author