调用Bartender的库进行标签自动打印
1.安装BarTender
开发系统需要安装BarTender,或者下载BarTender.dll文件,以供调用。
2.添加引用
在电脑安装了BarTender软件的情况下,直接引用。
注意软件需要是自动化以上的版本,才能正常进行调用。
3.创建标签
3.1 标签布局
根据自己的需求创建对应的标签,并进行布局。
3.2 设置资源名称
需要变更的数据要设置数据源名称,这个是用来让软件设置数据时标识用的,建议根据实际的显示信息使用英文单词进行命名。
4.软件界面设计
软件根据自己的需求设计软件界面,自己需要变更多少个字段,就设计对应的信息输入框,以及自己需要的其他相关数据均添加上。
5.程序实现
5.1 首先创建调用变量
/// <summary>
/// 打印项目
/// </summary>
private Item printItem = new Item();
/// <summary>
/// 标签应用
/// </summary>
private readonly BarTender.Application btApp = new BarTender.Application();
/// <summary>
/// 标签样式对象
/// </summary>
private BarTender.Format btFormat;
5.2 打印过程设计
/// <summary>
/// 打印事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Btn_LabelPrinting_Print_Click(object sender, RoutedEventArgs e)
{
//确认是否已经选中打印项目
if (printItem == null)
{
MessageBox.Show(Strings.EnterCorrectItem);
return;
}
//获取标签路径
string labelFilePath = AppDomain.CurrentDomain.SetupInformation.ApplicationBase + "Label\\" + txt_LabelPrinting_LabelFileName.Text.Trim() + ".btw";
//获取打印信息
Int32 cnt = Convert.ToInt32(num_LabelPrinting_Cnt.DecimalValue); //打印数量
Int32 startSN = Convert.ToInt32(num_LabelPrinting_StartSN.DecimalValue); //初始序列号
string batchNO = this.txt_LabelPrinting_BatchNO.Text.Trim(); //生产批号
//设置标签对象
btFormat = btApp.Formats.Open(labelFilePath);
//设置打印份数
btFormat.PrintSetup.IdenticalCopiesOfLabel = 1;
for (int i = 0; i < cnt; i++)
{
//设置字段值
btFormat.SetNamedSubStringValue("BatchNO", batchNO);
//打印标签
btFormat.PrintOut(false, false);
}
//不保存标签退出
btFormat.Close(BarTender.BtSaveOptions.btDoNotSaveChanges);
}
5.3 退出的时候,释放资源
//关闭标签应用,并且不保存
btApp.Quit(BarTender.BtSaveOptions.btDoNotSaveChanges);