自动补空行
打开CaseStudy目录下的文件:统计演示.Table
现在希望打印订单表,每页20行,如果某页不够20行,则自动补空行。
代码如下:
Dim
doc
As New
PrintDoc
Dim tb
As Table
= Tables("订单")
Dim prs
As
Integer =
20
'每页20行
For p
As
Integer =
0
To math.Ceiling(tb.Rows.Count
/ prs)
- 1
Dim
rt
As
New
prt.RenderTable
rt.Style.Gridlines.All
=
New
prt.Linedef(Color.Gray)
rt.CellStyle.Spacing.All
=
0.5
For
c
As
Integer
=
0
To
tb.Cols.Count
-
1
rt.Cells(0,c).Text
=
tb.Cols(c).Name
Next
For
r
As
Integer
=
p
*
prs
To
math.min(tb.Rows.Count
-
1,(
p
+
1)
*
prs
-
1)
For
c
As
Integer
=
0
To
tb.Cols.Count
-
1
rt.Cells(r
-
p
*
prs
+
1,
c).Text
=
tb.rows(r)(c)
Next
Next
If
p
=
math.Ceiling(tb.Rows.Count
/
prs)
-
1
'如果是最后一页
For
r
As
Integer
=
tb.Rows.Count
To (
p
+
1)
*
prs
-
1
'补空行
rt.Rows.Count
=
rt.Rows.Count
+
1
rt.Rows(rt.Rows.count
-1)(0).text
=
" "
Next
Else
rt.BreakAfter
=
prt.BreakEnum.Page
'否则换页
End If
doc.Body.Children.Add(rt)
Next
doc.Preview()