资源描述:
《ireport显示数据库图片.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、ireport显示数据库图片例如:数据库图片字段PICTURE_ATTACH类型为blob,在邦定字段时,设置ireport中字段(Fields)PICTURE_ATTACH属性:该字段类型FieldClass设置为java.io.InputStream然后添加一个图片来显示该图片字段,选择图片,设置属性:属性imageexpression设置为$F{PICTURE_ATTACH}属性Expressionclass设置为java.io.InputStreamJasperreport导出pdf粗体,宋体,黑体字体设置1.为了显示中文
2、,需要在ireport中设置文本属性:font中选中宋体,pdffont选中strong-light,pdf-encode选中UniGB-UCS2-H(ChineseSimplified)PdfEmbeddedtrue2.在导出pdf时,需要宋体或黑体中文加粗或斜体时需要设置如下MapfontMap=newHashMap();//宋体,加粗,非斜体的参数设置,宋体不需要引入字体文件,如果需要斜体的话,把false值变为true即可fontMap.put(newFontKey("宋体",true,false),newPdfFont(
3、"STSong-Light","UniGB-UCS2-H",true,true,false));//黑体的话,在ireport的Font中选中黑体,加粗,还要引入字体文件simhei.ttf,该文件可从C:WINDOWSFonts中获得FontKeykey=newFontKey("黑体",true,false);//黑体,true表示加粗,false表示非斜体,如果需要变为斜体,只需变为true即可PdfFontfont=newPdfFont("c:\simhei.ttf""Identity-H",true,true,fal
4、se);//该false值表示非斜体,如果需要变为斜体,只需变为true即可fontMap.put(key,font);exporter.setParameter(JRExporterParameter.FONT_MAP,fontMap);jasperrepor导出大数据量数据时,减小占用大量内存实现方法如下://reportvirtualizer"可以用来序列化临时数据到硬盘上来优化内存的使用.//第一个参数2表示放入内存中的页数,如果超过2页,第3页以后的数据,都会放到硬盘的文件夹/reports/tmp下,//第二个参数表示
5、临时文件存放的目录JRFileVirtualizervirtualizer=newJRFileVirtualizer(2,sc.getRealPath("/reports/tmp"));//设置该参数parameters.put(JRParameter.REPORT_VIRTUALIZER,virtualizer);jasperPrint=JasperFillManager.fillReport(jasperReport,parameters,dataSource);ireport换行跨页当字段显示的数据太多,自动换行的话,需要设
6、置属性Stretchwithoverflow为钩选,如果需要同行的其他显示字段和该换行字段一样高的话,设置其它同行显示字段的属性StretchType为Relativetobandheight;如果该换行的显示字段内容出现换行跨页的情况,需要给其它的同行显示字段的属性Printwhendetailoverflows设置为钩选状态,这样才能保证高度同行显示内容高度一样。(注意:如果改换行跨页显示的内容字体设置为宋体的话,在导出rtf格式时,换行数据可能会被遮挡,需要设置为默认字体,我想可能是字体不同导致计算高度有误)