最近一直在做项目中的打印功能,使用的工具是ireport,暂时先不详细介绍ireport这款报表工具,我只先总结一下我遇到的打印问题。
1.首先,我们需要简单了解一下ireport画面的基础布局
(1)title域:这里用来显示文档的标题,而且如果打印有多页,这个文档的标题title,只在第一页会显示,其余页都是不会显示的。
(2)page header域: 页头(相当于word中的页眉)这一块的内容也会在每页都显示
(3)column header:列标题,这一块也会在每一页进行显示
(4)detail:这块的 内容就是你要打印的文档body
(5)column footer:此处是用来展示每列的下部,类似于页脚
(6)pager footer:相当于word中的页脚,此处的内容也是每页都会显示出来
(7)summary:这个域目前我没有用到过
注意:上面的这些域,你可以选择全部保留,也可以只留下你需要的域,如果不需要某个域,你可以选择delete band.此时在你的模板上面,这个域就会消失掉,如果误删,你可以点击add band,此时这个域又会重新添加到你的模板上
2.组件面板
在窗口中的子菜单中有组件面板,选择组件面板,就可以在右侧看到如下图所示的组件面板,组件面板是用来绘制你的打印模板:
下面说几个我做报表打印过程中常用的几个组件:
(1)Image:用来添加图片或者水印
(2)Barcode:制作条形码的组件
(3)Line:在模板绘制线条
(4)Static Text:用来写固定文本的。
(5)Text Field:文本域,该组件是用来显示你动态获取的值在打印pdf上显示。
(6)Subreport:用来做子报表的一个组件
3.其中左边,report1是模板的名字,你可以点击该名字,点击属性可以修改该模板的名字。
(1)page Size是用来设置纸张的大小:
width:是宽度;height:是高度,一般A4纸,我们换算下来是595*842.
Orientation:表示纸张的横向还是纵向,其中Portrait代表竖着,LandScape表示横着。
(2)Margins:表示内容距离纸张的上下左右的边距。
(3)点击每个域,比如title,detail等,点击属性你就可以看到三个属性,band height(域的宽度),print when expression(表示当表达式为什么的时候才打印这个域的内容,否则不打印),还有一个是split type(Immediate,Prevent,Stretch)
4.选择工具,其中的选项,你可以看到
(1)ireport中general中的默认单位是inches,还有像素,厘米,毫米的单位,如下图所示:
(2)ClassPath:在这里你可以看到绘制打印模板需要的jar包,如下图所示,你也可以根据自己需求对于jar包进行添加或者移除:
(3)Fonts:表示字体,在你安装完ireport后,你可以查看它自带的字体,ireport会自带宋体,我们一般如果在打印模板中有中文的时候,就需要在textfield或者static text中设置字体属性,选择你所需要的字体。有一点需要注意一下就是,如果你在ireport中选择了微软雅黑,但是你的私服上面却没有对应微软雅黑字体的jar包,那么PDF预览的字体就不会是微软雅黑,也就是说你在绘制模板的时候所设置的字体必须在你的私服上面有对应JAR才是可以的。
从下图可以看出:
(1)ireport的默认字体是:SansSerif
(2)第一段说的是如何添加新的字体,在前面提到的Font的菜单处,有一个install fonts,就是来安装新的字体。并且提供了一个字体扩展的适应,这样可以方便准确的让字体显示在PDF上面。
今天就先介绍到这里。欢迎各位补充和指导。
ireport基础学习(1)
最新推荐文章于 2023-11-23 14:27:31 发布