最近在研究Label打印的东西,总结了两种打印方式:机器码打印、调用CodeSoft.
调用CodeSoft打印:
利用第三方软件codesofe进行label设计,然后在程序中调用打印。
这种方式维护起来比较方便,手动调整label各参数指标即可。
准备工作:
1.安装打印机驱动
2.安装codeSoft
3.设计label,设置label参数
程序实现:
注意首先添加引用:Lppx2.tlb (codesoft安装后文件中)
using
LabelManager2;
//
引入命名空间
private void btnPrint_Click( object sender, EventArgs e)
... {
ApplicationClass lbl = new ApplicationClass();
try
...{
lbl.Documents.Open(@"D:label.Lab", false);// 调用设计好的label文件
Document doc = lbl.ActiveDocument;
doc.Variables.FormVariables.Item("Var0").Value = txtContent.Text.Trim(); //给参数传值
doc.Variables.FormVariables.Item("Var1").Value = txtContent2.Text.Trim(); //给参数传值
int Num = Convert.ToInt32(txtQuentity.Text); //打印数量
doc.PrintDocument(Num); //打印
}
catch (Exception ex)
...{
MessageBox.Show(ex.Message);
}
finally
...{
lbl.Quit(); //退出
}
}
private void btnPrint_Click( object sender, EventArgs e)
... {
ApplicationClass lbl = new ApplicationClass();
try
...{
lbl.Documents.Open(@"D:label.Lab", false);// 调用设计好的label文件
Document doc = lbl.ActiveDocument;
doc.Variables.FormVariables.Item("Var0").Value = txtContent.Text.Trim(); //给参数传值
doc.Variables.FormVariables.Item("Var1").Value = txtContent2.Text.Trim(); //给参数传值
int Num = Convert.ToInt32(txtQuentity.Text); //打印数量
doc.PrintDocument(Num); //打印
}
catch (Exception ex)
...{
MessageBox.Show(ex.Message);
}
finally
...{
lbl.Quit(); //退出
}
}
机器码打印:
这种方式直接使用打印机机器指令进行打印,调用系统接口函数实现。
1.建立接口函数类 LPTControl
using
System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
namespace SMTOffLine
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
namespace SMTOffLine