1.可以创建一个窗体,窗体中加入一个按钮,再按钮的点击事件里面调用所写的打印方法
private void button1_Click_1(object sender, EventArgs e)
{
BarPrint newPrint = new BarPrint(); //所创建的打印类,将其实例化
newPrint.strPrintName = @"\\服务器以及打印机名称";
List<string> lst = new List<string>(); //创建一个集合实现循环打印10次
for (int i = 0; i <30 ; i++)
{
lst.Add("PV23-666666-" + i.ToString().PadLeft(6, '0'));
}
//调用打印类中的方法,传入对应的参数,实现打印
newPrint.printAdd(lst);
}
2.BarPrint打印类中的方法
public void PrintAdd(List<string> lst)
{
string strBoard = "";
StringBuilder sb = new StringBuilder(1024);
strBoard = "^XA^MD15^LH0,0^LL900^PW1400";
//设置初始坐标
int x=40;
int y=40;
for (int i = 0; i < lst.Count; i++)
{
int Temp_x=x+(i % 3)* 700; //X轴从左到右递增
int Temp_y=y+(i / 3)* 220; //Y轴每次换行的时候递增
strBoard = strBoard + "^F0"+Temp_x+","+Temp_y+"^BY3,2^BCN,60,N,N,N^FD" + lst[i] +
"^FS";
Barcode.BarCode.GETFONTHEX("SN:" + lst[i], "Arial","temp1",0,30,0,1,0,sb);
strBoard = strBoard + sb.ToString() + "^F0"+Temp_x+","+Temp_y+"^XGtemp1,1,1,1^FS";
}
//在此打一个断点进行调试,生成的条形码字符串复制到
//http://labelary.com/viewer.html网页中进行查看生成的条形码
strBoard += "PO1^XZ";
}
3.条形码队列打印类型一的最后的展示效果
4.上述的队列打印顺序是从左到右依次递增,一行三个条形码,然后换行打印,若想实现从上往下递增,一列10个,则只需要从新设定Temp_x和Temp_y的值即可
public void PrintAdd2(List<string> lst)
{
string strBoard = "";
StringBuilder sb = new StringBuilder(1024);
strBoard = "^XA^MD15^LH0,0^LL900^PW1400";
//设置初始坐标
int x=40;
int y=40;
for (int i = 0; i < lst.Count; i++)
{
int Temp_x=x+(i / 10) *700; //X轴从上往下,值不变知道一列满足了十个才会递增
int Temp_y=y+(i % 10) *220; //Y轴从上往下,值一直递增
strBoard = strBoard + "^F0"+Temp_x+","+Temp_y+"^BY3,2^BCN,60,N,N,N^FD" +
lst[i] + "^FS";
Barcode.BarCode.GETFONTHEX("SN:" + lst[i], "Arial","temp1",0,30,0,1,0,sb);
strBoard = strBoard + sb.ToString()+"^F0"+Temp_x+","+Temp_y+"XGtemp1,1,1,1^FS";
}
//在此打一个断点进行调试,生成的条形码字符串复制到
//http://labelary.com/viewer.html网页中进行查看生成的条形码
strBoard += "PO1^XZ";
SendStringToPrinter(strBoard);
}