Foxtable(狐表)用户栏目专家坐堂 → [讨论]有关批量生成条码并标注的问题


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

主题:[讨论]有关批量生成条码并标注的问题

帅哥哟,离线,有人找我吗?
zhuzhi
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:476 积分:4039 威望:0 精华:0 注册:2011/11/2 8:55:00
[讨论]有关批量生成条码并标注的问题  发帖心情 Post By:2015/10/15 7:56:00 [只看该作者]

各位老师,我现在有一份excel报表,每一页都有很多条数据,我现在需要对每一条数据,让报表自动生成内容随数据变化的条码,应该怎么做呢?

我看到帮助里有这个代码可以批量生成条形码:
Dim doc As New PrintDoc
Dim
rg As prt.RenderGraphics
Dim
Bar As New BarCodeBuilder
Bar
.Symbology = Barpro.Symbology.QRCode
Doc
.Stacking = prt.StackingRulesEnum.InlineLeftToRight
For Each
r As Row In Tables("A").Rows
   
bar.Code = r("第一列")
   
rg = new prt.RenderGraphics
   
bar.DrawOnCanvas(rg.Graphics,0,0,1)
   
rg.Style.Spacing.All = 3
   
Doc.Body.Children.Add(rg)
Next

Doc
.Preview()

但是,如果要对不止一列的数据批量生成,应该怎么做?
如果要让生成的条码上可以显示包含的内容。比如用姓名做的条码,那么除了条码外还标出姓名,以便以分发,那么又应该怎么做呢?

十分感谢!
[此贴子已经被作者于2015/10/15 8:07:59编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/10/15 9:36:00 [只看该作者]

Dim doc As New PrintDoc
Dim rg As prt.RenderGraphics
Dim Bar As New BarCodeBuilder
Bar.Symbology = Barpro.Symbology.QRCode
Doc.Stacking = prt.StackingRulesEnum.InlineLeftToRight
For Each r As Row In Tables("表A").Rows
    bar.Code = r("第一列")
    Bar.HumanReadableText = r("第一列")
    Bar.BottomMargin = 2

    rg = new prt.RenderGraphics
    bar.DrawOnCanvas(rg.Graphics,0,0,1)
    rg.Style.Spacing.All = 3
    Doc.Body.Children.Add(rg)
Next
Doc.Preview()

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


加好友 发短信
等级:一尾狐 帖子:476 积分:4039 威望:0 精华:0 注册:2011/11/2 8:55:00
  发帖心情 Post By:2015/10/15 10:20:00 [只看该作者]

非常感谢您!

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


加好友 发短信
等级:一尾狐 帖子:476 积分:4039 威望:0 精华:0 注册:2011/11/2 8:55:00
  发帖心情 Post By:2015/10/15 12:34:00 [只看该作者]

老师,请问如何改变条码的大小,比如让一页可以打6排条码,每排5个?

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/10/15 15:11:00 [只看该作者]

Dim doc As New PrintDoc
Dim rg As prt.RenderGraphics
Dim Bar As New BarCodeBuilder
Bar.Symbology = Barpro.Symbology.QRCode
Doc.Stacking = prt.StackingRulesEnum.InlineLeftToRight
Dim count As Integer = 1
For Each r As Row In Tables("表A").Rows
    bar.Code = r("第一列")
    Bar.HumanReadableText = r("第一列")
    Bar.BottomMargin = 2
    rg = new prt.RenderGraphics
    bar.DrawOnCanvas(rg.Graphics,0,0,1)
    rg.Style.Spacing.All = 3
    Doc.Body.Children.Add(rg)
    If count Mod (3 * 2) = 0 Then
        rg.BreakAfter = prt.BreakEnum.page
    Else If count Mod 3 = 0 Then
        rg.BreakAfter = prt.BreakEnum.line
    End If
    count += 1
Next
Doc.Preview()

 回到顶部