如何在java中将边距设置为jasper报告?
如何在java中将边距设置为jasper报告!
我有带边距的reports.jasper,但是在打印时我必须改变边距!
JasperPrint.setTopMargins(myMarginsValue)
不起作用!!!
我使用JRPrintServiceExporter
发送到打印机!
当前代码:
InputStream reportStream = FacesContext.getCurrentInstance().getExternalContext().getResourceAsStream("/reports/" + "myReport"+".jasper"); JasperReport template = (JasperReport) JRLoader.loadObject(reportStream); template.setWhenNoDataType(WhenNoDataTypeEnum.ALL_SECTIONS_NO_DETAIL);
使用JRXmlLoader将jrxml (注意不是.jasper) 加载到JasperDesign中
JasperDesign design = JRXmlLoader.load(stream); //Location of jrxml file example FacesContext.getCurrentInstance().getExternalContext().getResourceAsStream("/reports/" + "myReport"+".jrxml"); design.setBottomMargin(bottomMargin); //set the margins design.setTopMargin(topMargin) design.setLeftMargin(leftMargin) design.setRightMargin(rightMargin); design.setColumnWidth(design.getPageWidth()-leftMargin-rightMargin);//if you change your left and right margin you need to set new correct columnWidth //compile the report JasperReport report = JasperCompileManager.compileReport(design); //this is what you called template
然后填写并根据需要导出 。
当然textField可能不在设计范围内,如果你将边距增加到很多,乐队可能不适合页面高度,这需要适当考虑。
如果目的是移动布局以适应预打印表单,这是另一个类似的问题: 如何移动整个布局以适应不同打印机上的预打印表单
- 为什么使用Linux将文本截断为PDF格式?
- 如何在JPanel / JFrame中显示JasperReports Viewer ..?
- 使用JasperReports API生成报告时无法从JavaBean检索值
- 从JasperReports打印PDF
- 为什么JasperViewer只适用于localhost?
- pdf下载对话框窗口未出现在浏览器中。 使用java的extjs 4
- JasperReports类路径
- NoClassDefFoundError:org / apache / commons / logging / LogFactory
- 编译错误:ireport with java;属性’uuid’不允许出现在元素’jasperReport’中