-- 作者:99473593
-- 发布时间:2015/4/10 20:29:00
-- [求助]服装标签排版问题
此主题相关图片如下:20150410001.jpg
如上面标签样式,我想在条码的上方再增加几个文本内容,如调用表中的品名,品牌一起跟条码打印出来,
代码如下,请看下,红色部分的代码要放在什么地方,或者要怎么改才行啊,现在的代码,品名和品牌等跟条码重合了,显示在条码上
Dim txt1 As String = e.Form.Controls("TextBox1").Text \'定义变量,用于手动输入打印数量 Dim cmb1 As String = e.Form.Controls("ComboBox1").Text \'定义变量,用于手动选择打印机
Dim doc As New PrintDoc \'定义一个报表 doc.PageSetting.Width = 80 \'纸张宽度为200毫米 doc.PageSetting.Height = 50 \'纸张高度为170毫米 DoC.PageSetting.LeftMargin = 0 \'设置左侧边距为2毫米 DoC.PageSetting.RightMargin = 0 \'设置右侧边距为2毫米 DoC.PageSetting.TopMargin = 1 \'设置顶部边距为2毫米 Doc.PageSetting.BottomMargin = 1 \'底部边距未1毫米 Doc.Style.TextAlignHorz = prt.AlignVertEnum.Center \'垂直居中 \'DoC.Style.TextAlignHorz = prt.AlignHorzEnum.Center \'水平居中 DoC.Style.TextAlignHorz = prt.AlignHorzEnum.Right \'右对齐 doc.PageSetting.Landscape = True \'横向打印 doc.AutoRotate = False \'如果纸张的宽度超过高度,要加上这行代码 Dim rx As New prt.RenderText \'定义一个文本对象 Dim Bar As New BarCodeBuilder \'定义个条码图片Bar Dim rg As prt.RenderGraphics \'定义一个图形rg
Dim t As Table = Tables("ShangPinXiangXiZiLiao") \'指定数据来源表 Dim ra As prt.RenderArea \'定义一个容器ra For i As Integer = t.TopPosition To t.BottomPosition Dim r As Row = t.Rows(i) For j As Integer = 0 To val(txt1) - 1 \'指定每行打印数量 If j Mod 2 = 0 Then ra = new prt.RenderArea \'新建一个容器 Doc.Body.Children.Add(ra) \'将容器加入报表 End If bar.Code = r("ShangPinXiangXiZiLiao_ShangPinHuoHao") \'指定条码数据来源列 Bar.Symbology = Barpro.Symbology.Code128 \'指定条码类型 Bar.BarWidth = 0.3 \'窄条宽度 Bar.BarRatio = 2.5 \'设定宽窄比例 Bar.BarHeight = 10 \'设定条码高度 Bar.QuietZoneWidth = 2 \'静区宽度 Bar.Font = New Font("宋体",9,FontStyle.Bold) \'设置条码数字,字体,大小 Bar.CodeAlignment = Barpro.Alignment.BelowJustify Bar.Text = "BOBOYA ¥" & r("ShangPinXiangXiZiLiao_XiaoShouJia") & "元" \'指定条码上方文本说明 Bar.TextFont = New Font("宋体",9,FontStyle.Bold) \'定义说明文本字体及字号 Bar.TextAlignment = Barpro.Alignment.AboveLeft rg = new prt.RenderGraphics \'新建一个图形
rx = New prt.RenderText rx.text = "品名:" & r("ShangPinXiangXiZiLiao_ShangPinMingCheng") \'rx.Style.FontBold = True \'字体加粗 rx.Style.FontSize = 9 \'大体大小为16磅 rx.Style.TextAlignHorz = prt.AlignHorzEnum.Center \'水平居中排列 rx.Style.Spacing.Bottom = 1 \'和下面的对象(表格)距离3毫米 rg.Children.Add(rx)
rx = New prt.RenderText rx.text = "品牌:" & r("ShangPinXiangXiZiLiao_PinPai") \'rx.Style.FontBold = True \'字体加粗 rx.Style.FontSize = 9 \'大体大小为16磅 rx.Style.TextAlignHorz = prt.AlignHorzEnum.Center \'水平居中排列 rx.Style.Spacing.Bottom = 1 \'和下面的对象(表格)距离3毫米 rg.Children.Add(rx)
bar.DrawOnCanvas(rg.Graphics,0,0,1) \'将图形加入到条码中 \'设置条码的排列边距 rg.Stacking = prt.StackingRulesEnum.InlineLeftToRight \'设置容器中对象的排列方式 rg.Style.TextAlignHorz = prt.AlignVertEnum.Center \'垂直居中 rg.Style.Spacing.ToP = 1 \'设置下间隔为3毫米 rg.Style.Spacing.Right = 5 \'设置右间间隔毫米 rg.Style.Spacing.Bottom = 5 \'设置右间间隔毫米 rg.Style.Spacing.Left = 1 \'左边距 ra.Stacking = prt.StackingRulesEnum.InlineLeftToRight \'设置容器中对象的排列方式 ra.Style.TextAlignHorz = prt.AlignVertEnum.Center \'垂直居中 ra.Style.TextAlignHorz = prt.AlignHorzEnum.Center \'水平居中 \' ra.Style.Spacing.ALL = 1 \'设置下间隔为3毫米 ra.Style.Spacing.Top = 20 \'设置下间隔为3毫米 ra.Style.Spacing.Right ra.Style.Spacing.Right = 1 \'设置右间间隔毫米 ra.Style.Spacing.Left = 5 \'左边距 ra.Children.Add(rg) Next Next Doc.PrinterName = cmb1 \'指定打印机 Doc.Preview() \'打印预览 \'Doc.Print \'直接打印
[此贴子已经被作者于2015/4/14 13:49:04编辑过]
|