使用bartender打印 ,可以進行自定義開發
安裝bartender軟件
bartender有很多合作商, 購買後找他們的下載就行, 破解版不支持開發, 建議購買正版
安裝完成後會有SDK的文件夾
SDK的相關文檔集成在軟件的幫助裏
使用SDK開發 .net framework 版本需要大於等於4.7
引用 Seagull.BarTender.Print.dll
using Seagull.BarTender.Print; //引用 //實例化一個對象 var btEngine = new Engine(); //開始打印 btEngine.Start(); //打開模板 var btFormat = btEngine.Documents.Open("D:\\文檔1.btw"); //設置變量值(可選) btFormat.SubStrings["SubName"].Value = "1234"; //設置打印機名稱 btFormat.PrintSetup.PrinterName = "你的打印機名稱"; //設置打印張數 btFormat.PrintSetup.IdenticalCopiesOfLabel = 1; //開始打印 var pric = btFormat.Print("PrintingJobName"); //關閉文檔 btFormat.Close(SaveOptions.DoNotSaveChanges); //結束打印 btEngine.Stop(); //釋放對象 btEngine.Dispose();
使用COM組件開發
如果你的項目版本低於4.7可以使用com組件開發
添加引用BarTender組件
//創建一個實例 var btApp = new BarTender.Application(); // 打開一個模板 var btFormat = btApp.Formats.Open("D:\\文檔1.btw", false, "你的打印機名稱"); // 設置變量值(可選) btFormat.SetNamedSubStringValue("SubName", "1234"); //設置打印份數 btFormat.IdenticalCopiesOfLabel = 2; BarTender.Messages btMsgs; //開始打印 var btPrintRtn = btFormat.Print("PrintingJobName", true, -1, out btMsgs); //輸出錯誤日誌 if (btPrintRtn != BarTender.BtPrintResult.btSuccess) { foreach (BarTender.Message msg in btMsgs) { Console.WriteLine(msg.Message); } } //關閉模板 btFormat.Close(BarTender.BtSaveOptions.btSaveChanges); //退出打印程序 btApp.Quit(BarTender.BtSaveOptions.btDoNotSaveChanges);