調用codeSoft的模板,實現批量連續打印。
Code:
制作標簽1.lab.
添加兩個變量var0,var1。
using LabelManager2;
string strFile = System.Windows.Forms.Application.StartupPath.ToString() + "\\1.lab"; lbl = new LabelManager2.ApplicationClass(); lbl.Documents.Open(strFile, false);//調用設好的lbl標簽 doc = lbl.ActiveDocument; //獲得所有打印機名稱 Strings vars = lbl.PrinterSystem().Printers(enumKindOfPrinters.lppxAllPrinters); //獲得需要的打印機名稱 打印機固定可直接給名稱值 // string printName = vars.Item(2); PrintDocument prtdoc = new PrintDocument(); string strDefaultPrinter = prtdoc.PrinterSettings.PrinterName;//獲取默認的打印機名 for (int j = 0; j < vars.Count; j++) { string[] arryString = vars.Item(j).Split(','); if (arryString[0] == strDefaultPrinter) { doc.Printer.SwitchTo(strDefaultPrinter, arryString[1], true); break; } } DataTable dt = codeInfo_DAL.GetData(this.cbb.SelectedValue.ToString()); if (dt != null && dt.Rows.Count > 0) { foreach (DataRow dr in dt.Rows) { //codesoft模板中標簽變量 doc.Variables.FormVariables.Item("var0").Value = dr["CodeID"].ToString(); doc.Variables.FormVariables.Item("var1").Value =dr["Name"].ToString(); // doc.PrintDocument(3); doc.PrintLabel(1, 1, 1, 1, 1, ""); } //標簽批量連續打印。FormFeed()必須等參數變量輸出後才執行,輸出給打印機。 doc.FormFeed(); lbl.Quit(); }
相關:
codesoft模板,條碼居中顯示,設置:
codesoft模板,128碼下方文字間距設置。
你可以先用TOOLS菜單下ODBC,OLEDB等工具配置數據源,然後雙擊你要配置的可變量,在出來的屬性窗口裡有一個選擇:DATA SOURCE,這時你選擇Variable Data就可以配置了。有問題可以QQ:274845698.我在一個印刷公司裡專業做這個的。
斑馬打印機一般是將打印內容生成圖像傳送給打印機後才執行打印的,而且,比如你打印30個序列變量的標簽,打印圖像一般是一次性生成傳給打印機的。不是打印一張之後再生成第二張打印圖像,這樣的話標簽的序列化對打印速度的影響很小。可能是你的編程設計增加了打印圖像生成的時間吧。對於VB不懂,僅供參考!