Foxtable(狐表)用户栏目专家坐堂 → 打印标签是有一个是条形码 报错 内存不足 如何解决


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

主题:打印标签是有一个是条形码 报错 内存不足 如何解决

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


加好友 发短信
等级:幼狐 帖子:129 积分:1150 威望:0 精华:0 注册:2020/5/9 9:40:00
打印标签是有一个是条形码 报错 内存不足 如何解决  发帖心情 Post By:2020/10/29 13:48:00 [只看该作者]

下面的代码是一个打印标签实例 增加一个条码列 报错 内存不足 如何解决


Dim doc As New PrintDoc '定义一个报表

Dim ra As New prt.RenderArea

Dim rg As New prt.RenderGraphics

Dim Bar As New BarCodeBuilder

Dim rt As New prt.RenderText


Bar.Symbology = Barpro.Symbology.Code39

Bar.BarRatio = 0.3

Bar.BarHeight = 8

Bar.QuietZoneWidth = 2

Bar.DisplayChecksum = False

Bar.CodeAlignment = Barpro.Alignment.BelowLeft

Bar.TextAlignment = Barpro.Alignment.BelowRight


Doc.Stacking = prt.StackingRulesEnum.InlineLeftToRight


ra.Width = "33%Parent.Width" '设置标签宽度

ra.Height= 32

ra.SplitHorzBehavior = prt.SplitBehaviorEnum.Never '禁止水平分割

ra.SplitVertBehavior = prt.SplitBehaviorEnum.Never '禁止垂直分割

ra.Style.Spacing.Right = 2 '设置标签之间的所有和上下间隔为2毫米

ra.Style.Spacing.Bottom = 2

ra.Style.Padding.All = 1 ' 标签内容距离边框为1毫米

ra.Style.Borders.All = New prt.Linedef(0.3, Color.Red) '设置边框

ra.DataBinding.DataSource = BindTables("DDGL_CGHT.DDGL_CGCP") '将容器绑定到员工表

Doc.Body.ChildRen.Add(ra) '将容器加入到报表中



bar.Code = "12345678" '"[Fields!ProductCode.Value]"

rg = New prt.RenderGraphics

bar.DrawOnCanvas(rg.Graphics,0,0,1)

ra.Children.Add(rg) '添加到容器中


rt = New prt.RenderText

rt.Text = "STYLE:[Fields!StyleNo.Value]"

ra.Children.Add(rt) '添加到容器中

rt = New prt.RenderText

rt.Text = "COLOR:[Fields!Color.Value]"

ra.Children.Add(rt) '添加到容器中

rt = New prt.RenderText

rt.Text = "SIZE:[Fields!Size.Value]"

ra.Children.Add(rt) '添加到容器中

Doc.Preview() '预览报表


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


加好友 发短信
等级:超级版主 帖子:109505 积分:557193 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/10/29 14:09:00 [只看该作者]

如果表格行数比较多,建议分页加载,分多次打印。一次不要打印太多内容,foxtable能够使用的内存不多,也就1G作用。

另外如果打开了大量的窗口。加载大量的数据也会导致内存占用过高。
还有不要频繁的删除和加载数据

 回到顶部