การที่ลาก elements ของ JasperReports อย่าง Text Field หรือ Static Text แล้วต้องมากำหนดให้ใช้ fonts เป็น Arial ขนาด 8 ตัวอักษรสีดำ 30 จุด มันถึกและเสียเวลามากเกินไป เลยหาวิธีใหม่ มาเทียบกับตอนที่ทำเว็บดู เราใช้คำสั่ง css โดยกำหนด [code language=”css”]<style>
* {
color:#c00000;
font: 8px arial;
}
</style>[/code] หรือ [code language=”css”]<style>
body {
color:#c00000;
font: 8px arial;
}
</style>[/code] เป็น 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 เพิ่มขึ้นมาประมาณ[code language=”xml” title=”Default Style”]<style name="*" fontName="Arial" fontSize="8" forecolor="#000000" hTextAlign="Left" isDefault="true" vTextAlign="Top"/>[/code] เราสามารถ copy ไปวางใน report อื่นๆ จะได้ไม่ต้องมาเซ็ตทุกๆ รีพอร์ตเหมือนกัน ส่วนใครสงสัยว่า attribute ไหนคืออะไรอ่านได้จาก Report Styles
About the author