Foxtable(狐表)用户栏目专家坐堂 → [求助]如何横向打印标签


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

主题:[求助]如何横向打印标签

美女呀,离线,留言给我吧!
找到没重的名
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:129 积分:2193 威望:0 精华:0 注册:2016/11/8 6:22:00
[求助]如何横向打印标签  发帖心情 Post By:2020/7/17 11:32:00 [只看该作者]

请教老师:想让标签横向左右排列,横着排满后再另一行,但是弄了半天还是只能竖着。

Dim tb As Table=Tables("花名册")
Dim doc As New PrintDoc '定义一个报表
Doc.PageSetting.LeftMargin = 10 '设置左边距
Doc.PageSetting.RightMargin = 10 '设置右边距
Doc.PageSetting.TopMargin = 10 '设置上边距
Doc.PageSetting.BottomMargin = 10 '设置下边距
doc.Stacking = prt.StackingRulesEnum.InlineLeftToRight '设置排列方式
For i As Integer = 0 To 9
    Dim rpar As New prt.RenderParagraph() '定义一个段落对象
    Dim f As New Font(rpar.Style.Font, FontStyle.Bold) '定义一个同样但加粗的字体
    rpar.Content.AddImage(getimage("logo.jpg"))
    rpar.Content.AddText("XXXXXXXXX区")
    doc.body.Children.add(rpar)
    
    Dim rt As New prt.RenderTable() '定义一个表格对象
    rt.Style.GridLines.All = New prt.LineDef '将网格线类型设为默认类型
    rt.Width = "auto" '表格宽度为50mm
    rt.Height = 70 '设置表格的高度
    rt.Style.Spacing.All = 10 '和其他对象之间的间隔为2mm
    rt.Style.TextAlignHorz = prt.AlignHorzEnum.center '水平居中排列
    rt.style.TextAlignVert = prt.AlignVertEnum.Center
    rt.SplitHorzBehavior = prt.SplitBehaviorEnum.Never '禁止水平分割
    rt.SplitVertBehavior = prt.SplitBehaviorEnum.Never '避免垂直换页的时候,表格被分割成两部分.
    rt.Cols(0).Width = 20
    rt.Cols(1).Width = 20
    rt.cells(0,0).Text = "姓   名"
    rt.Cells(0,1).Text = tb.Rows(i)("姓名")
    rt.Cells(1,0).Text = "性   别"
    rt.Cells(1,1).Text = tb.Rows(i)("性别")
    rt.Cells(2,0).Text= "年    龄"
    rt.cells(2,1).Text = tb.Rows(i)("年龄")
    rt.Cells(3,0).Text = "项目1"
    rt.Cells(3,1).Text = tb.Rows(i)("项目1)
    rt.Cells(4,0).Text= "项目2"
    rt.cells(4,1).Text = tb.Rows(i)("项目2")
    doc.Body.Children.Add(rt) '将表格对象加入到报表中
Next
Doc.Preview() '预览报表

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


加好友 发短信
等级:超级版主 帖子:106017 积分:539172 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/7/17 11:58:00 [只看该作者]

参考:http://www.foxtable.com/webhelp/topics/1186.htm

Dim tb As Table=Tables("花名册")
Dim doc As New PrintDoc '定义一个报表
Doc.PageSetting.LeftMargin = 10 '设置左边距
Doc.PageSetting.RightMargin = 10 '设置右边距
Doc.PageSetting.TopMargin = 10 '设置上边距
Doc.PageSetting.BottomMargin = 10 '设置下边距
doc.Stacking = prt.StackingRulesEnum.InlineLeftToRight '设置排列方式
For i As Integer = 0 To 9
    Dim ra As New prt.RenderArea
    ra.SplitHorzBehavior = prt.SplitBehaviorEnum.Never '禁止水平分割
    ra.SplitVertBehavior = prt.SplitBehaviorEnum.Never '禁止垂直分割
    ra.Width = 80 '必须指定宽度
    ra.Height = 90 '高度
    doc.body.Children.add(ra)

    Dim rpar As New prt.RenderParagraph() '定义一个段落对象
    Dim f As New Font(rpar.Style.Font, FontStyle.Bold) '定义一个同样但加粗的字体
    rpar.Content.AddImage(getimage("logo.jpg"))
    rpar.Content.AddText("XXXXXXXXX区")
    ra.Children.add(rpar)
    
    Dim rt As New prt.RenderTable() '定义一个表格对象
    rt.Style.GridLines.All = New prt.LineDef '将网格线类型设为默认类型
    rt.Width = "auto" '表格宽度为50mm
    rt.Height = 70 '设置表格的高度
    rt.Style.Spacing.All = 10 '和其他对象之间的间隔为2mm
    rt.Style.TextAlignHorz = prt.AlignHorzEnum.center '水平居中排列
    rt.style.TextAlignVert = prt.AlignVertEnum.Center
    rt.SplitHorzBehavior = prt.SplitBehaviorEnum.Never '禁止水平分割
    rt.SplitVertBehavior = prt.SplitBehaviorEnum.Never '避免垂直换页的时候,表格被分割成两部分.
    rt.Cols(0).Width = 20
    rt.Cols(1).Width = 20
    rt.cells(0,0).Text = "姓   名"
    rt.Cells(0,1).Text = tb.Rows(i)("姓名")
    rt.Cells(1,0).Text = "性   别"
    rt.Cells(1,1).Text = tb.Rows(i)("性别")
    rt.Cells(2,0).Text= "年    龄"
    rt.cells(2,1).Text = tb.Rows(i)("年龄")
    rt.Cells(3,0).Text = "项目1"
    rt.Cells(3,1).Text = tb.Rows(i)("项目1)
    rt.Cells(4,0).Text= "项目2"
    rt.cells(4,1).Text = tb.Rows(i)("项目2")
    ra.Children.Add(rt) '将表格对象加入到报表中
Next
Doc.Preview() '预览报表


 回到顶部