iReport 报表元素大全
这章我们将解释报表的主要对象和他们的特性。
这里的”element”就是一些图形对象,像一些文本或长方形。不同于字处理机那样,在iReport那段的概念中,表和分页符将不存在;任何东西被创建借助于elements,包括文字,当他们排成一行时就创建了表格,等等。这些相近的被大多数报表工具所采用。
“basic”元素中有7个由JasperReports提供:
- Line
- Rectangle(长方形)
- Ellipse
- Static text
- Text field (or simply Field)
- Image
- Subreport
通过这些元素的结合,能够创建任何一种报表。
除了这些之外,iReport还提供了两种特殊的基于象元的元素:chart(图表)和barcode(条形码)。
每种元素都有一些普通的属性,像高,宽,位置,band应该被放的位置和其他特殊的属性(例如:字体,在长方形的情况时,border的厚度)。它可能分为两个大的类别的组:图形元素(像:line,rectangle,ellipse,image)和文本区域(labels和textfield)。
子报表代表一种独立的元素,因为他使用起来很复杂,我也将接触他们在一个单独的章节。
这些元素被插入bands。特别是每一元素都不能合放在一个band中。如果这些元素不能被完整包含在band中,报表编译器将返回一个错误信息,关于元素的错误的姿态;不管怎么样,报表都将被编译,甚至是更糟糕的情况,但”out
of band”将不能被打印出来。
选择并插入元素到报表中:
为了添加元素到报表中,选择(图5.1)工具条上目前显示的工具
表格5.1
取向工具被用来对这些元素做更重要操作和一些常用的工具。当你想插入一个元素时,点鼠标左键在你想插入元素的地方向下拖拽鼠标来画一个合适的长方形。当松开鼠标时,一个新的元素将被自动的选择和创建。这个新的元素也将在iReport面板的右边的元素浏览(elements browser)中出现。
图5.1
双击鼠标右键或者选择菜单View→Element Properties, it 能够打开元素的属性窗口(图5.2)。
图5.2
这个窗口是有组织的几个选项卡。This window is organized in severl tabs. The “Common” tab
选项卡包含了每一种元素的通用的属性,其他的选项卡是每一种元素单个的属性。
能够选种多个元素在同一时间功过取选工具和画一个长方形将你要选择的元素包含在内。被选择的区域会显示一个粉红色的长方形框。
或者,选中一个或多个元素在同一时间,通过按“Shift”键用鼠标点中你已经插入的元素。
选种一个元素时将在该元素长方形的每个角显示兰色的小方框(图5.4),当选择多个元素时该元素长方形的每个角显示灰色的小方框。(图5.5)
图5.3 图5.4 图5.5
多重选择中的第一个元素作为主要的选择。.
为了能够调整元素的大小,可以移动鼠标的光标到长方形的边上或拐角处:点并拖拽来安排你想要的尺寸。为了更小心的调整,可以在元素的属性框的特别选项卡中填写合适的尺寸。如果同时选择了多个元素,一个元素的调整会调整所有的元素。
此外,你也可以用放大报表,通过使用工具条上的zoom工具(图5.6):
图5.6
你可以在选择框中选择百分比(图5.6)或者直接写一个你想要的值(明确一下,字符后使用’%’号)。
警告:在调整元素期间,必须注意使用整数(像1x,2x,3x,等)来避免近似值的错误!
布置和元素顺序
一个元素可以通过鼠标来移动:通过点这个元素,选中后可以进行拖拽到任意你想要的位置。为了能够最大化的提高移动的准确度,你可以用方向键进行移动,一次移动一个像素。同样的操作,你可以完成通过按shift键,将引起这个元素十个像素的移动。
.即使移动时有一点阻碍,也可以破坏掉这个元素的阻碍,可以选择菜单Edit→Disable elements mouse move.
菜单可以View→Show grid查看不同元素的位置,通过格栅作为参考。也可以插入一个动作,通过菜单Edit→Snap去对起格线。
图5.7
随着越多元素组织进报表,可能就要用到几个工具,这些工具可以从这两个菜单format和contextual中找到,可以按右键查看选择插入元素。更多的官能性需要选择更多的元素。在这种情况下,基本元素被作为做作的参考。表5.2是对官能性的总结。
Align left(左对齐)
校正基本元素的左边
√
Align
right(右对齐)
校正基本元素的右边
√
Align
top
校正基本元素的上边(或者上部分)
√
Align bottom
校正基本元素的底边
√
Align
vertical axis
校正被选中元素的水平中心
√
Align horizontal
axis
校正被选中元素的垂直中心
√
Align to band top
设置最高值为0
Align to
band bottom
尽可能的放置元素在属于他的底边的band.
Same
width
设置被选择元素的宽度为一样
√
Same width
(max)
设置被选择元素的宽度都为最大宽度
√
Same width
(min)
设置被选择元素的宽度的最窄值
√
Same
height
设置被选择的元素的高度等于基本元素的高度
√
Same height
(max)
设置被选元素的高度等于最高元素的高度
√
Same height
(min)
设置被选元素的高度等于最矮元素的高度
√
Same
size
设置被选元素规格为基本元素
√
Center horizontally(水平居中)
(band based)
设置被选元素水平居中
Center vertically(垂直居中)
(band based)
设置被选元素垂直置中
Center in band
字段中间
Center in
background
整体置中
Join sides
left
被选元素以靠最左边元素为基准,所有元素的左边相连
√
Join sides
right
被选元素的以靠右边元素为基准,所有元素的右边相连
√
HS →Make
equal
使被选元素之间保持一样的距离
√
HS
→Increase(增加)
在所有元素中见插入5个像素的空白(向右移动)
√
HS
→Decrease(减少)
在所有元素中间插入5个像素的空白(向左移动)
√
HS
→Remove
删除水平方向的空白并向左移动元素
√
表格5.2
元素能够被互搭;也就是通过使用格式功能Bring to front and Send to
back使元素置前或置后。zorder被给通过整齐的元素插入到报表。这个排列能被看到在元素树,这些元素被查看在每一个band从最矮到最高的。
我们说过,一个元素已经被连接到所属的band。如果这个元素的一部分或全部超出band,它将会出现一个红色的高亮框架显示(仅仅为text元素),这个位置可能就是无效的。其他元素,这个错误位置被高亮显示在元素树或者被选择的元素上用一个红色的拐角。
图5.8
如果一个元素的部分遮掩了其他元素,这个拐角用绿色高亮显示;但如果一个元素的全部遮掩了其他元素,这个拐角用粉红色高亮显示。
图5.9
移动一个元素从一个band到另一个band,iReport可以自动改变所属的band。去指定不同的band,需要用属性窗口的第一个复选框(图5.9)。
如果两个或更多个元素被选择,那么属性窗口将只显示公共属性,如果这些属性值是不同的,将显示空值(使用的字段被显示空白)。具体的值为特殊属性,将适用于所有被选择的元素。
使用元素树管理元素:
元素树能够容易和精确地局部地选中报表元素。
图5.10
这里报表的外型是一个属性结构:主节是bands(使用一个文件夹表示),进到band里面是元素符号,名字和坐标能被看到,他们也被置于band中。
双击一个你选择的元素,将打开该对象的属性窗口。也可以通过鼠标右键属性菜单打开。再往后常用的功能就复制和粘贴,这儿有两个特殊的功能, move up and
move down, 意思就是说可以修改一个元素在具体band中的z-border.
图5.11
如果选择了band的名字,可以右键属性进行对band 属性的操作。(图 5.11).
所有的band的特征将在第8章被解释。
基本属性:
所有的元素都有公共的属性在属性窗口“common”的选项卡 (图 5.2).主要关系到元素在页面上的位置:以下对不同属性的描写。
并列和同等规格的总是被确定为72个像素大小。
Band 指元素所属的band。所有的元素只属于一个band,一个band总联系着这个元素。元素的安放总是在band中。
Top 所属band的元素的上边到band顶部的距离
Left 从band左边到元素右上角的距离
Width 指元素的宽度s the element width;
Height 指元素的高;它实际上的值是根据打印时真实值的高度来确定
表格5.3
Foreground 指文本被打印的颜色和元素的线和拐角被画的颜色。
Background 指元素背景填充色
Transparent 这个选项表示元素为透明的,透明的元素的部分应该被背景色填充。
警告:不是所有的输出格式都支持透明的。
Remove Line When Blank This 这个选项允许拿走垂直空间占有的对象,如果不太明显,这个元素option allows to
take away the vertical space
occupied by an object, if this is not visible; the element visibility is
determined by the value of the expression contained in the Print
When Expression attribute; thinking about the page as a grid where
the elements are put, the line which the element occupies, is that
where it is put;
表格5.4
表格5.3加亮元素的一条线;为了真正的删除这条线,所有的元素占有仅仅一部分线,有null值的地方 (没有被打印出来);
Print in first whole band 这个选项保证当元素值溢出时被打印在下一页或下一列;这个保证被使用当Print repeated
values是不活跃时
Print when detail overflows 这个选项允许打印元素以页或列,如果band不能被打印当前的列或页
Print repeated values this 这个选项决定时候打印元素,当该元素的值与前一条记录值一样时
Position type 在band被改变的情况下确定顶部的坐标。三个可能的值是:
- FixRelativeToTop 预先定义位置类型;这个坐标从来不改变的。
- Float 元素进一步的向底边增加他们的高度,依据前一个元素的高度
- FixRelativeToBottom 元素维持其到底边的距离的常量值;被用做单独记录的分割线。
Print when group changes
所有的报表的组被显示在这个下拉框中;如果他们中的一个被选择,仅当表达式改变组的时候被选择的一个将被打印,此时一个新的坏的组被选择。
Key 它是元素的名字,只有一个意义(iReport自动提出),被程序用来在运行时修改需要修改的文件的属性;
Stretch type 这个属性用来定义详细打印期间元素的高度;可能值有以下几种::
- No stretch 预先改变类型利用元素的高度保持一直。
-RelativeToBandHeight 元素成比例的增加使band增加,用来模仿表格的垂线。
- RelativeToTallestObject 这个选项修改一个元素的高度从而改变离它最近的元素:它也被用做element
group,这是一个元素组机制,但不能被iReport管理。
Print when expression it is
它是一个java表达式像那些描述在第三章,返回一个boolean对象;除了这些元素之外,这些表达式也被连接到band中。如果表达式返回true,这个元素是隐藏的。一个null值和一个新boolean(true)关联,将被无条件打印出来。
图形元素的画一个对象像一条线或一个长方形;他们通常不显示数据,但是他们却更多的被打印出来,从美学上看他们更有趣,通俗易懂。所有种的元素分享这个“Graphics
element”选项卡在这个属性窗口:
图5.11
Pen 指你画线和框架的厚度;它可能的值是:
- None 厚度为null,表示禁止画线或边框
- Thin 线和边框的厚度最薄,但可以看的到。
- 1Point 线和边框被设置为一个像素;
- 2Point 线和边框被设置为两个像素;
- 4Point 线和边框被设置为四个像素;
- Dotted 线和边框被画用虚线;
Fill 用来修改填充背景;仅仅被允许使用fill值,完全的填充
线
在JasperReports中线被定义为长方形,有对角线的长方形。
图5.12 图5.13
这个线被画用Foreground色和Pen 厚度.
Line direction it 被表示成两条对角线,可能的值是: TopDown (看图 5.13) 和 BottomUp.
矩形
长方形常用在一个元素周围的边框。这个边界用一个较粗的前景色线来画的。背景被背景色填充,如果这个元素没有被定义为透明的话。
长方形的特殊性在JasperReports中会有一个rounded
comers。被定义的意思的是radius属性,描绘弯曲度在你画一个拐角时,使用像素。
图5.14 图5.15
椭圆
椭圆是唯一一个没有自己的属性的元素。至于长方形,它的边框也是用一个粗的颜色是前景色的线画的。背景被背景色填充如果这个元素没有被定义为transparent。椭圆被画在长方形内切边与长方形的四条边相切。
图5.16
图象
图象是最复杂的图形对象。可以使用raster images
(像GIF, PNG, JPEG, etc...) 插入到报表中,但它也能被使用作为一个 canvas
对象,, 你可以画一种箱子:这个图象元素被使用,例如,画一个图表或一个条形码。
图5.17 图5.18
可以使用自己写的类使用net.sf.jasperreports.engine.JRRenderable 接口。一个文本连接(“Hyper Link”
tab)能够关联到一个图形元素。我们将分析文本连接在这章。
图象特征可以在“Image”选项卡设置.
Image Expression 它是一个java表达式。它的结果是一个被Image
Expression Class属性定义的对象;
Expression Class attribute; 以返回类型为理由,图象被装载改变的方式;
Image Expression Class 表达式的返回类型。
表格5.4概述了Image Expression Class可能采用和描述Image Expression结果的解释。
java.lang.String
一个被认为是一个文件名的字符串;JasperReports将设法解释这个字符串想一个绝对的路径;如果没发现文件,它将设法加载指定名字的源从classpath
正确的表达式是:
“c:\\devel\\ireport\\myImage.jpg”
“it/businesslogic/ireport/icons/logo.gif”
java.io.File
指定一个文件对象作为图象去加载。
正确的表达式可能是:
new java.io.File(“c:\\myImage.jpg”)
java.net.URL
指定It specifies the
java.net.URL 对象。当你以html格式输出报表时使用它。
正确的表达式可能是:
New
java.net.URL(“http://127.0.0.1/test.jpg”)
java.io.InputStream
指定一个准备读取的java.io.InputStream对象;既然这样我们就不能考虑图象存在或它在一个文件中:大多数我们读取一图象从数据库,返回一个inputStream。
正确的表达式可能是:
MyUtil.getInputStream(${MyField})
java.awt.Image
指定一个java.awt.Image对象;当一个图象对象被创建时大概返回一个简单的对象;
正确的表达式可能是:
MyUtil.createChart()
JRRenderable
指定一个使用
net.sf.jasperreports.engine.JRRenderable 接口的对象。
表格5.5
在这个例子中我们有解释, MyUtil 代表一个创造类。如果你想使用一个创造类通过调用一个static
方法去运行特殊的细节,就需要使用一个属于它的包(例如
it.businesslogic.ireport.util.MyUtil)或者用import(菜单Show→Import directives in
the
report)引用这个包。我们解释这个方法在这个例子中是static的,但当我们讨论变量时,我们将看到如何实例化一个类在打印开始时和如何使用它在表达式中。
在Image Expression
中使用字段,变量和参数,它将加载或生成图象以变化的方式(像已经发生的,例如,在detail中生成一个有图象的目录,每个目录关联一个图象)
Scale Image 定义图象怎样适应元素的尺度;可能的值有三个:
- Clip 图象的尺寸不改变;
- FillFrame 图象适合元素的尺寸(变的不成型)
- RetainShape 图象适合元素的尺寸,但保持图象原来的比例
图5.19 图5.20 图5.21
Using cache this如果这个元素最近将被再打印,可以使用这个选项使图象保存在内存中以便下次使用;图象只有被 Image Expression
Class 设置java.lang.String 才能使用cache;
Vertical alignment 这个属性用来定义图象为垂直队列依照元素区域; 可能的值是:
- Top 图象排列在顶部;
- Middle 图象被放在垂直队列的中间在元素区域中。
- Bottom 图象被排列在底部;
Horizontal alignment 依照元素区域,图象被定义到水平队列;可能的值是:
- Left 图象排列在左边;
- Center 依照元素区域,图象排列在水平中间
- Right 图象排列在右边;
Evaluation time 定义Image
Expression被处理时的状态;事实上表达式的赋值能被做当报表引擎在创建报表时遭遇这个元素或或者也能延缓在一些特殊的案例中:例如,你想去计算一个子报表。
赋值时间是一个非常有用的功能,它将被解释在JasperReport手册中。可能的值:
- Now立即求表达式的值;
- Report 报表产生之后求表达式的值;
- Page页未求表达式的值 ;
- Column列末求表达式的值;
- Group求每组的值;
Evaluation group 同 Evaluation time.
图形元素(和text元素)可以被想象成一个框架,或者可以定义它的四个边的值。
它是元素元素和内容之间的空间。边框和内容被定义在border选项卡。他们的属性被介绍在JasperReports0.6.3版本。
图5.22
可以选择元素的类型和画每条边的颜色。边框类型是:
- None,厚度为null,允许不打印出边框线;
- Thin最小厚度;
- 1Point 一个像素的厚度;
- 2Point 2个像素的厚度;
- 4Point 4个像素的厚度;
- Dotted最小厚度的虚线;
一个简单查看图形效果的方式就选择border选项卡中间的显现边框。
文本元素
和图形元素一样,文本元素也有一个允许查看的公共属性:它是font选项卡(图5.24)
图5.23
“font” 选项卡是用来设置元素中文本的属性,所以不仅仅是字体(字符的类型和尺寸),还有文本的队列,可能的rotation和线空间。
Report font
是一个边框形式字体的名字。从这里可以设置所有字符的属性;边框形式字体可以定义报表的标准和管理他们通过选择菜单:View→Report fonts;
Line spacing 行间距,可能的值是:
- Single 单行写如;(预先确定值predefined value);
- 1_1_2 间隔一行半写入;
- Double 双倍写入;
Horizontal align 依照元素使文本水平排列;
Vertical align 依照元素使文本垂直排列;
Rotation 允许指定文本如何去打印,可能的值是:
- None 文本将正常的打印从左到右,从上到下;
- Left the 文本逆时针旋转90度,它被打印从底到顶,水平和垂直队列依照文本;始针4
ionports0.6.3banbe the 旋转(例如,文本开始打印将沿这底边垂直队列画顶的界限开始);
- Right the 文本顺时针旋转90度从顶到底,垂直和水平队列依照文本旋转;
图5.24
其他的字符的字体设置将在第六章详细解释。
文本元素的属性可以用文本工具(图5.25)条来进行修改。
图5.25
静态文本
static text被用来展示非动态文本的报表。 仅仅一个参数用来区别这个元素从一个普通文本元素在static
text选项卡中,指定你要看到的文本:它是一个标准的字符串,不是表达式,也不需要依照java语言的规范。
图5.26 图5.27
文本域
文本区域可以打印一个java表达式的值。简单例子就是打印一个字符串(java.lang.String)来自于一个表达式想这个:“Hello
World!”
既然这样,静态文本创建就需要很小的工作量,因为这个例子中字符串是一个不变的值;其实用java表达式去定义文本区域允许包含非常高的控制超长文本。不直接的联系文本元素(像发生在不同报表工具文本元素隐含的数据库字段的值):不同字段的记录值,是可利用的通过datasource,存储在一个名字叫fields的对象中,他们被访问依靠表达式的语法在第三章。
和图象一样,一个超文本连接可以关联textfields,可以在HyperLink中定义
图5.28 图5.29
Textfield Expression Class
it指定域表达式的返回类型;可能的值有许多,包括所有的由sql类型组成和一些管理数据的类的java对象,以下表格列出了所有可选的类型的。
java.lang.Object
java.lang.Boolean
java.lang.Byte
java.util.Date
java.sql.Timestamp
java.sql.Time
java.lang.Double
java.lang.Float
java.lang.Integer
java.io.InputStream
java.lang.Long
java.lang.Short
java.math.BigDecimal
java.lang.String
表格5.6
列表中包含的 java.lang.Object 类型能够在没有其他类型可以联合数据使用。
Evaluation time 指定报表创建Textfield在那个阶段赋值;
Evluation group 是否赋值在一个组后
Stretch with overflow 当它被选择时,这个选项可以垂直的改变内容,如果元素不能充分的包含在文本线内的话;
Blank when null 当域表达式返回一个null值时允许打印空白;
Pattern 指定字符串可以使用Format类,指定用Textfield Expression Class是正确的。
JasperReports能格式化日期和数字;下面的表格概述中的一些例子包括字母和他们的意义可以快速的创建日期和数字。
G
Era designator
AD
y
Year
1996;
96
M
Month in year
July; Jul; 07
w
Week in
year
27
W
Week in month
2
D
Day in
year
189
d
Day in month
10
F
Day of week in
month
2
E
Day in week
Tuesday; Tue
a
Am/pm
marker
PM
H
Hour in day (0-23)
0
k
Hour in day
(1-24)
24
K
Hour in am/pm (0-11)
0
h
Hour in am/pm
(1-12)
12
m
Minute in hour
30
s
Second in
minute
55
S
Millisecond
978
z
Time zone
Pacific
Standard Time; PST; GMT-08:00
Z
Time zone
-0800
表格5.7
这儿是一些dates和timestamp的格式例子:
"yyyy.MM.dd G 'at' HH:mm:ss z"
2001.07.04 AD at 12:08:56
PDT
"EEE, MMM d, ''yy"
Wed, Jul 4, '01
"h:mm a"
12:08
PM
"hh 'o''clock' a, zzzz"
12 o'clock PM, Pacific Daylight
Time
"K:mm a, z"
0:08 PM, PDT
"yyyyy.MMMMM.dd GGG hh:mm
aaa"
02001.July.04 AD 12:08 PM
"EEE, d MMM yyyy HH:mm:ss Z"
Wed, 4
Jul 2001 12:08:56 -0700
"yyMMddHHmmssZ"
010704120856-0700
表格:5.8
0
Number
Yes
阿拉伯数字
#
Number
Yes
阿拉伯数字,
0作为缺省的
.
Number
Yes
十进制或货币分割付
-
Number
Yes
负号
,
Number
Yes
分组号
E
Number
Yes
科学符号中为单独是尾数和说明Separates
mantissa and exponent in scientific notation. 不需要引用像素或后缀Need not be quoted in
prefix or suffix.
;
Subpattern boundary
Yes
分割正负样式Separates
positive and negative subpatterns
%
Prefix or
suffix
Yes
乘以100使用百分号
\u2030
Prefix or
suffix
Yes
乘以1000使用每一千
¤ (\u00A4)
Prefix or
suffix
No
Currency sign, replaced by currency symbol. If doubled, replaced
by international currency
symbol. If present in a pattern, the monetary decimal separator is used
instead of the decimal separator.
'
Prefix or
suffix
No
引用特殊字符Used to quote special characters in a prefix or suffix,
for example, "'#'#" formats 123 to "#123". To create a single quote itself, use
two in a row: "#
o''clock".
表格5.9
这是一些数字格式的例子:
"#,##0.00"
1.234,56
"#,##0.00;(#,##0.00)"
1.234,56
(-1.234.56)
表格5.8
图5.30
通过“create”按钮可以打开样式编辑,意思就是数字,日期,流通等的简单格式
Textfield Expression 是一个打印表达式,返回在Textfield Expression Class;中设置的类型
可以转变StaticText在Textfield通过选择和按F3键。
为了能快速的改变一个或更多个普通文本元素的表达式可以选择他们和按F2键。
子报表
子报表是包含在其他报表中的一个元素,由一个jasper文件和在子报表的属性中被指定的datasource提供数据开始创建。
以下是关于子报表特征的一些简要插图。由于这个子栏目的复杂性,我们将在另一章详细解释。
图5.31
图5.32 图5.33
Parameters Map Expression
定义一个运行时赋值的表达式;这个表达式必须返回java.util.Map;这个map中包含一些名值对,这些名值对将被传递给子报表作为参数值;
Connection/Datasource expression 定义一个返回JDBC连接或JRDataSource用来填充子报表;
Using cache 保存或不保存数据到内存,以便能快速的加载数据再下一次;
Subreport expression 定义一个在运行时返回Subreport expression
class对象的表达式。依照返回类型,表达式被赋值为了恢复用来生成子报表的jasper对象;
Subreport parameters this 这个表可以定义一些使用适当的表达式动态提供的名值对给子报表;
专用元素
除了JasperReports提供的原始的元素外, iReport提供两个”合成”元素为他们的普通属性和补偿使用图形元素。
图表
所有关于图表的信息查看14章。
条形码
这个元素可以创建一个动态的条形码形式的值。
图5.34 图5.35
指定打印条形码的类型。
可能的值列表在表格5.9
2of7
3of9
Bookland
Codabar
Code128
Code128A
Code128B
Code128C
Code39
EAN128
EAN13
GlobalTradeItemNumber
Int2of5
Int2of5
Monarch
NW7
PDF417
SCC14ShippingCode
ShipmentIdentificationNumber
SSCC18
Std2of5
Std2of5
UCC128
UPCA
USD3
USD4
USPS
表格5.9
Checksum it specifies the code 控制条形码是否被打印指定的代码;这个特征仅仅被条形码的一些类型提供;
Show text 指定是否打印文本 ;
Barcode Expression 指定以来于条形码的表达式的值;总是返回string类型的值;
Evaluation time e Evaluation group 和图形元素的意思一样;
超连接
图形和文本域元素都能被用做一个anchor(锚)在文档中,作为超连接指向源或其他本地的anchor(锚)。锚是一种特殊的“标签”用来识别文档中特殊的位置。
超连接和锚可以通过Hyper
Link(图5.35)选项卡来定义。这是分开的两部分。上部分是一个文本域,这里可以指定这个锚的名字。这个名字可以被其他的连接引用。
下部分是定义连接的源或文档中的位置。
JasperReports 可以创建五个类型的超连接: Reference,
LocalAnchor, LocalPage, RemoteAnchor and RemotePage. 通过Hyperlink target it
可以指定打开一个连接在当前的窗口(预先设定,目标是self(本身))或一个新的窗口(Blank target)。
警告:不是所有的输出格式支持超连接。
图5.37
Reference
The Reference
连接指出一个外部的源,一个可以被通过点URL识别的源,例如一个服务器去管理向下的记录功能。这表达式仅仅需要Hypelink Reference
Expression.
LocalAnchor
点这个本地锚意思就是创建一个连接在同一文档之间。它可以被使用,例如通过一个标题的连接可以找到相应的章节。
定义一个本地锚去要指定一个能生成有效名字的Hyperlink Anchor Expression
LocalPage
如果指示代替锚,你想点一个详细的当前报表页,就需要创建一个LocalPage连接。既然这样就需要指定这个指示页的号码,意味着使用
HyperLink Page Expression (这个表达式返回一个Integer对象)。
RemoteAnchor
如果你想点一个外部的锚的细节,你就要使用RemoteAnchor 连接。既然这样你就要指定在Hyperlink
Reference Expression域和指定Hyperlink Anchor Expression来命名锚
RemotePage
这个连接可以点进一个文档外部的详细页面。既然这样,这个外部文件的URL点就指定Hyperlink Reference
Expression域和这页的号码将指定HyperLink Page Expression。