Foxtable(狐表)用户栏目专家坐堂 → 求助:专业报表设计如何实现双面打印呢?


  共有4039人关注过本帖树形打印复制链接

主题:求助:专业报表设计如何实现双面打印呢?

帅哥哟,离线,有人找我吗?
李孝春
  31楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(有点甜)Dim doc As New PrintDoc '定义一个报...  发帖心情 Post By:2014/12/10 10:35:00 [只看该作者]

If i Mod 2 = 0 Then
        ra.Style.Spacing.Left = 20  原来是35
        ra.Width = 162 '对象宽度为163毫米


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20141210103601.jpg
图片点击可在新窗口打开查看

有点甜老师 继续求纠正

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  32楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/12/10 10:53:00 [只看该作者]

 left 和 width 自己调整

 回到顶部
帅哥哟,离线,有人找我吗?
李孝春
  33楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(有点甜) left 和 width 自己调整  发帖心情 Post By:2014/12/10 11:41:00 [只看该作者]

哎 还是没有能够实现正反两面对应位置全部一致

第二面的位置应当靠右边多5 整体往上多4

怎么调整都调整不到位  求可以微调的方式


下面的代码是一个一个的表创建 可以实现定位 但是却不能完美显示正确 
求纠正
Dim doc As New PrintDoc '定义一个报表
doc.PageSetting.PaperKind = 9  '定义纸张为A4

Dim rt2 As New prt.RenderTable() '定义一个表格对象
rt2.Style.Borders.all = New prt.Linedef(0.1, Color.white, DashStyle.Dot)
rt2.Style.GridLines.All = New prt.LineDef '将网格线类型设为默认类型
rt2.Style.TextAlignHorz = prt.AlignHorzEnum.Center
rt2.Style.TextAlignVert = prt.AlignVertEnum.Center
rt2.Cells(0,0).Style.Font = New Font("宋体", 28 , FontStyle.Bold) '设置文本对象的字体
rt2.Cells(1,0).Style.Font = New Font("宋体", 20 , FontStyle.Bold) '设置文本对象的字体
rt2.Style.Font = New Font("宋体", 16, FontStyle.Bold)
rt2.Cols.Count = 2 '设置列数
rt2.Rows.Count = 8 '设置行数
rt2.Height = "128" '设置表格的高度
rt2.Width = "128" '设置表格的宽度
rt2.Style.Padding.Top = 0.5 '上边距25毫米
rt2.Style.Padding.Left = 0.5 '左边距5毫米
rt2.Style.Padding.Right = 0.5 '右边距5毫米
rt2.Style.Padding.Bottom= 0.5 '左边距5毫米
rt2.Cols(0).Width = 30 '设置列宽
rt2.Cells(0,0).SpanCols = 2
rt2.Cells(1,0).SpanCols = 2
rt2.Cells(0,0).Text="贵州省瓮安县人民检察院"


rt2.Cells(1,0).Text="贵州省瓮安县人民检察院"
rt2.Cells(2,0).Text="讯问时间:"
rt2.Cells(3,0).Text="讯问地点:"
rt2.Cells(4,0).Text="案件编号:"
rt2.Cells(5,0).Text="录制编号:"
rt2.Cells(6,0).Text="光盘编号:"
rt2.Cells(7,0).Text="录制人员:"
doc.Body.Children.Add(rt2) '将文本对象加入到报表

Dim rt3 As New prt.RenderTable() '定义一个表格对象
rt3.Style.GridLines.All = New prt.LineDef '将网格线类型设为默认类型
rt3.Rows.Count = 8 '设置行数
rt3.Cols.Count = 4 '设置列数
rt3.Height = "127" '设置表格的高度
rt3.Width = "162" '设置表格的宽度
rt3.Cells(0,1).Text="贵州省瓮安县人民检察院"
rt3.Cells(1,1).Text="贵州省瓮安县人民检察院"
rt3.Cells(2,1).Text="讯问时间:"
rt3.Cells(3,1).Text="讯问地点:"
rt3.Cells(4,1).Text="案件编号:"
rt3.Cells(5,1).Text="录制编号:"
rt3.Cells(6,1).Text="光盘编号:"
rt3.Cells(7,1).Text="录制人员:"
rt3.Cells(0,0).Text="贵州省瓮安县人民检察院"
rt3.Cells(0,0).Style.TextAngle = -360
rt3.Cells(0,3).Text="贵州省瓮安县人民检察院"
rt3.Cells(0,3).Style.TextAngle = -360
rt3.Style.TextAlignHorz = prt.AlignHorzEnum.Center
rt3.Style.TextAlignVert = prt.AlignVertEnum.Center
rt3.Style.Font = New Font("宋体", 16, FontStyle.Bold)
rt3.Cells(0,1).Style.Font = New Font("宋体", 23 , FontStyle.Bold) '设置文本对象的字体
rt3.Cols(0).Width = 8 '设置列宽
rt3.Cols(1).Width = 30
'rt3.Cols(2).Width = 6
rt3.Cols(3).Width = 8
'rt3.Style.Padding.Top = 5 '上边距25毫米
'rt3.Style.Padding.Right = 25 '右边距5毫米
rt3.y = 140  '表水平位置
rt3.Cells(0,1).SpanCols = 2
rt3.Cells(1,1).SpanCols = 2
rt3.Cells(0,0).SpanRows = 8
rt3.Cells(0,3).SpanRows = 8
rt3.SplitVertBehavior = prt.SplitBehaviorEnum.Never
doc.Body.Children.Add(rt3)
'rt3.BreakAfter = prt.BreakEnum.Page


Dim rt4 As New prt.RenderTable() '定义一个表格对象
rt4.Style.Borders.all = New prt.Linedef(0.1, Color.white, DashStyle.Dot)
rt4.Style.GridLines.All = New prt.LineDef '将网格线类型设为默认类型
rt4.Style.TextAlignHorz = prt.AlignHorzEnum.Center
rt4.Style.TextAlignVert = prt.AlignVertEnum.Center
rt4.Cells(0,0).Style.Font = New Font("宋体", 28 , FontStyle.Bold) '设置文本对象的字体
rt4.Cells(1,0).Style.Font = New Font("宋体", 20 , FontStyle.Bold) '设置文本对象的字体
rt4.Style.Font = New Font("宋体", 16, FontStyle.Bold)
rt4.Cols.Count = 2 '设置列数
rt4.Rows.Count = 8 '设置行数
rt4.Height = "128" '设置表格的高度
rt4.Width = "128" '设置表格的宽度
rt4.x=60
rt4.Style.Padding.Top = 0.5 '上边距25毫米
rt4.Style.Padding.Left = 0.5 '左边距5毫米
rt4.Style.Padding.Right = 10 '右边距5毫米
rt4.Style.Padding.Bottom= 0.5 '左边距5毫米
rt4.Cols(0).Width = 30 '设置列宽
rt4.Cells(0,0).SpanCols = 2
rt4.Cells(1,0).SpanCols = 2
rt4.Cells(0,0).Text="贵州省瓮安县人民检察院"
rt4.SplitVertBehavior = prt.SplitBehaviorEnum.Never

rt4.Cells(1,0).Text="贵州省瓮安县人民检察院"
rt4.Cells(2,0).Text="讯问时间:"
rt4.Cells(3,0).Text="讯问地点:"
rt4.Cells(4,0).Text="案件编号:"
rt4.Cells(5,0).Text="录制编号:"
rt4.Cells(6,0).Text="光盘编号:"
rt4.Cells(7,0).Text="录制人员:"
doc.Body.Children.Add(rt4) '将文本对象加入到报表

Dim rt5 As New prt.RenderTable() '定义一个表格对象
rt5.Style.GridLines.All = New prt.LineDef '将网格线类型设为默认类型
rt5.Rows.Count = 8 '设置行数
rt5.Cols.Count = 4 '设置列数
rt5.Height = "127" '设置表格的高度
rt5.Width = "162" '设置表格的宽度
rt5.Cells(0,1).Text="贵州省瓮安县人民检察院"
rt5.Cells(1,1).Text="贵州省瓮安县人民检察院"
rt5.Cells(2,1).Text="讯问时间:"
rt5.Cells(3,1).Text="讯问地点:"
rt5.Cells(4,1).Text="案件编号:"
rt5.Cells(5,1).Text="录制编号:"
rt5.Cells(6,1).Text="光盘编号:"
rt5.Cells(7,1).Text="录制人员:"
rt5.Cells(0,0).Text="贵州省瓮安县人民检察院"
rt5.Cells(0,0).Style.TextAngle = -360
rt5.Cells(0,3).Text="贵州省瓮安县人民检察院"
rt5.Cells(0,3).Style.TextAngle = -360
rt5.Style.TextAlignHorz = prt.AlignHorzEnum.Center
rt5.Style.TextAlignVert = prt.AlignVertEnum.Center
rt5.Style.Font = New Font("宋体", 16, FontStyle.Bold)
rt5.Cells(0,1).Style.Font = New Font("宋体", 23 , FontStyle.Bold) '设置文本对象的字体
rt5.Cols(0).Width = 8 '设置列宽
rt5.Cols(1).Width = 30
'rt5.Cols(2).Width = 6
rt5.Cols(3).Width = 8
'rt5.Style.Padding.Top = 5 '上边距25毫米
'rt5.Style.Padding.Right = 25 '右边距5毫米
'rt5.y = 142  '表水平位置
rt5.Cells(0,1).SpanCols = 2
rt5.Cells(1,1).SpanCols = 2
rt5.Cells(0,0).SpanRows = 8
rt5.Cells(0,3).SpanRows = 8

doc.Body.Children.Add(rt5)
rt5.SplitVertBehavior = prt.SplitBehaviorEnum.Never
doc.Preview() '预览

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  34楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/12/10 11:45:00 [只看该作者]

 不理解你说的什么是完美。

 

 要你怎么弄,就怎么设计和调整好具体的数值啊


 回到顶部
帅哥哟,离线,有人找我吗?
李孝春
  35楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2472 积分:17346 威望:0 精华:0 注册:2013/1/31 0:03:00
回复:(有点甜) 不理解你说的什么是完美。&n...  发帖心情 Post By:2014/12/10 11:51:00 [只看该作者]

就是实现双面打印后 正面的位置没有问题 反面的位置有些偏移 
比如第一个表 正面打印出来后 反面的打印位置不和正面一致 有些偏移

另外还麻烦有点甜老师帮忙看看楼上的代码 纠正一下 

以后我好学习一下如何直接创建多页表  十分感谢

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  36楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/12/10 12:03:00 [只看该作者]

Dim doc As New PrintDoc '定义一个报表
doc.PageSetting.PaperKind = 9  '定义纸张为A4


Dim rt2 As New prt.RenderTable() '定义一个表格对象
rt2.Style.Borders.all = New prt.Linedef(0.1, Color.white, DashStyle.Dot)
rt2.Style.GridLines.All = New prt.LineDef '将网格线类型设为默认类型
rt2.Style.TextAlignHorz = prt.AlignHorzEnum.Center
rt2.Style.TextAlignVert = prt.AlignVertEnum.Center
rt2.Cells(0,0).Style.Font = New Font("宋体", 28 , FontStyle.Bold) '设置文本对象的字体
rt2.Cells(1,0).Style.Font = New Font("宋体", 20 , FontStyle.Bold) '设置文本对象的字体
rt2.Style.Font = New Font("宋体", 16, FontStyle.Bold)
rt2.Cols.Count = 2 '设置列数
rt2.Rows.Count = 8 '设置行数
rt2.Height = "110" '设置表格的高度
rt2.Width = "128" '设置表格的宽度
rt2.Style.Padding.Top = 0.5 '上边距25毫米
rt2.Style.Padding.Left = 0.5 '左边距5毫米
rt2.Style.Padding.Right = 0.5 '右边距5毫米
rt2.Style.Padding.Bottom= 0.5 '左边距5毫米
rt2.Cols(0).Width = 30 '设置列宽
rt2.Cells(0,0).SpanCols = 2
rt2.Cells(1,0).SpanCols = 2
rt2.Cells(0,0).Text="贵州省瓮安县人民检察院"

 


rt2.Cells(1,0).Text="贵州省瓮安县人民检察院"
rt2.Cells(2,0).Text="讯问时间:"
rt2.Cells(3,0).Text="讯问地点:"
rt2.Cells(4,0).Text="案件编号:"
rt2.Cells(5,0).Text="录制编号:"
rt2.Cells(6,0).Text="光盘编号:"
rt2.Cells(7,0).Text="录制人员:"
doc.Body.Children.Add(rt2) '将文本对象加入到报表


Dim rt3 As New prt.RenderTable() '定义一个表格对象
rt3.Style.GridLines.All = New prt.LineDef '将网格线类型设为默认类型
rt3.Rows.Count = 8 '设置行数
rt3.Cols.Count = 4 '设置列数
rt3.Height = "127" '设置表格的高度
rt3.Width = "162" '设置表格的宽度
rt3.Cells(0,1).Text="贵州省瓮安县人民检察院"
rt3.Cells(1,1).Text="贵州省瓮安县人民检察院"
rt3.Cells(2,1).Text="讯问时间:"
rt3.Cells(3,1).Text="讯问地点:"
rt3.Cells(4,1).Text="案件编号:"
rt3.Cells(5,1).Text="录制编号:"
rt3.Cells(6,1).Text="光盘编号:"
rt3.Cells(7,1).Text="录制人员:"
rt3.Cells(0,0).Text="贵州省瓮安县人民检察院"
rt3.Cells(0,0).Style.TextAngle = -360
rt3.Cells(0,3).Text="贵州省瓮安县人民检察院"
rt3.Cells(0,3).Style.TextAngle = -360
rt3.Style.TextAlignHorz = prt.AlignHorzEnum.Center
rt3.Style.TextAlignVert = prt.AlignVertEnum.Center
rt3.Style.Font = New Font("宋体", 16, FontStyle.Bold)
rt3.Cells(0,1).Style.Font = New Font("宋体", 23 , FontStyle.Bold) '设置文本对象的字体
rt3.Cols(0).Width = 8 '设置列宽
rt3.Cols(1).Width = 30
'rt3.Cols(2).Width = 6
rt3.Cols(3).Width = 8
'rt3.Style.Padding.Top = 5 '上边距25毫米
'rt3.Style.Padding.Right = 25 '右边距5毫米
'rt3.y = 140  '表水平位置
rt3.Cells(0,1).SpanCols = 2
rt3.Cells(1,1).SpanCols = 2
rt3.Cells(0,0).SpanRows = 8
rt3.Cells(0,3).SpanRows = 8
'rt3.SplitVertBehavior = prt.SplitBehaviorEnum.Never
doc.Body.Children.Add(rt3)
rt3.BreakAfter = prt.BreakEnum.Page

rt2 = New prt.RenderTable() '定义一个表格对象
rt2.Style.Spacing.Left = 25
rt2.Style.Borders.all = New prt.Linedef(0.1, Color.white, DashStyle.Dot)
rt2.Style.GridLines.All = New prt.LineDef '将网格线类型设为默认类型
rt2.Style.TextAlignHorz = prt.AlignHorzEnum.Center
rt2.Style.TextAlignVert = prt.AlignVertEnum.Center
rt2.Cells(0,0).Style.Font = New Font("宋体", 28 , FontStyle.Bold) '设置文本对象的字体
rt2.Cells(1,0).Style.Font = New Font("宋体", 20 , FontStyle.Bold) '设置文本对象的字体
rt2.Style.Font = New Font("宋体", 16, FontStyle.Bold)
rt2.Cols.Count = 2 '设置列数
rt2.Rows.Count = 8 '设置行数
rt2.Height = "110" '设置表格的高度
rt2.Width = "162" '设置表格的宽度
rt2.Style.Padding.Top = 0.5 '上边距25毫米
rt2.Style.Padding.Left = 0.5 '左边距5毫米
rt2.Style.Padding.Right = 0.5 '右边距5毫米
rt2.Style.Padding.Bottom= 0.5 '左边距5毫米
rt2.Cols(0).Width = 30 '设置列宽
rt2.Cells(0,0).SpanCols = 2
rt2.Cells(1,0).SpanCols = 2
rt2.Cells(0,0).Text="贵州省瓮安县人民检察院"

 


rt2.Cells(1,0).Text="贵州省瓮安县人民检察院"
rt2.Cells(2,0).Text="讯问时间:"
rt2.Cells(3,0).Text="讯问地点:"
rt2.Cells(4,0).Text="案件编号:"
rt2.Cells(5,0).Text="录制编号:"
rt2.Cells(6,0).Text="光盘编号:"
rt2.Cells(7,0).Text="录制人员:"
doc.Body.Children.Add(rt2) '将文本对象加入到报表


rt3 = New prt.RenderTable() '定义一个表格对象
rt3.Style.GridLines.All = New prt.LineDef '将网格线类型设为默认类型
rt3.Rows.Count = 8 '设置行数
rt3.Cols.Count = 4 '设置列数
rt3.Height = "127" '设置表格的高度
rt3.Width = "162" '设置表格的宽度
rt3.Cells(0,1).Text="贵州省瓮安县人民检察院"
rt3.Cells(1,1).Text="贵州省瓮安县人民检察院"
rt3.Cells(2,1).Text="讯问时间:"
rt3.Cells(3,1).Text="讯问地点:"
rt3.Cells(4,1).Text="案件编号:"
rt3.Cells(5,1).Text="录制编号:"
rt3.Cells(6,1).Text="光盘编号:"
rt3.Cells(7,1).Text="录制人员:"
rt3.Cells(0,0).Text="贵州省瓮安县人民检察院"
rt3.Cells(0,0).Style.TextAngle = -360
rt3.Cells(0,3).Text="贵州省瓮安县人民检察院"
rt3.Cells(0,3).Style.TextAngle = -360
rt3.Style.TextAlignHorz = prt.AlignHorzEnum.Center
rt3.Style.TextAlignVert = prt.AlignVertEnum.Center
rt3.Style.Font = New Font("宋体", 16, FontStyle.Bold)
rt3.Cells(0,1).Style.Font = New Font("宋体", 23 , FontStyle.Bold) '设置文本对象的字体
rt3.Cols(0).Width = 8 '设置列宽
rt3.Cols(1).Width = 30
'rt3.Cols(2).Width = 6
rt3.Cols(3).Width = 8
'rt3.Style.Padding.Top = 5 '上边距25毫米
'rt3.Style.Padding.Right = 25 '右边距5毫米
'rt3.y = 140  '表水平位置
rt3.Cells(0,1).SpanCols = 2
rt3.Cells(1,1).SpanCols = 2
rt3.Cells(0,0).SpanRows = 8
rt3.Cells(0,3).SpanRows = 8
'rt3.SplitVertBehavior = prt.SplitBehaviorEnum.Never
doc.Body.Children.Add(rt3)


doc.Preview() '预览


 回到顶部
总数 36 上一页 1 2 3 4