標籤:c# fastreport bartender 條碼列印
標題雖然是說C#,但是以下介紹的幾種方法不是只能在C#中使用,在其它的語言裡面也行。
總結一下常見的條碼列印方法,其實打條碼的方式很多,大概有以下幾種:
1.斑馬列印軟體製作好模板,儲存為.prn格式的檔案,檔案格式大致如下
^XA^LH30,0^JMA^XZ
~DG000.GRF,04096,128,
,::::::::::::::::::rQF0,:::,::::::::~DG001.GRF,04096,128,
,:::::::rQF0,:::a,:::::::::::::::::::~DG002.GRF,04096,128,
,:::::::::::::::rQF0,::::,::::::::::~DG003.GRF,04096,128,
,::::::::::::::::::::rQF0,::::,:::::^XA
^MMT
^PW1004
^LL1890
^LS0
^FT0,544^XG000.GRF,1,1^FS
^FT0,1856^XG001.GRF,1,1^FS
^FT0,1792^XG002.GRF,1,1^FS
^FT0,1728^XG003.GRF,1,1^FS
^FT21,449^A0N,33,33^FH\^FDUPC:^FS
^FT425,450^A0N,33,33^FH\^FDEAN:^FS
^BY1,3,18^FT604,1691^BCN,,N,N
^FD>:{SN1}^FS
^BY2,3,30^FT494,1638^BCN,,N,N
^FD>:{SN2}^FS
模板中紅色的欄位則是需要用變數替換的,這個很簡單,只需要Replace即可,然後將替換好之後的模板內容發送給印表機列印出來就行。
2.使用BarTender製作btw的模板檔案,檔案格式即為.btw,為模板檔案指定資料來源,資料來源的種類很多,比如資料庫、文字檔等等,這裡我以文字檔舉例:
首先製作好模板,
其中Temp.ActiveCode1和Temp.ActiveCode2則是兩個文字檔,檔案格式為:
ActiceCode1,ActiceCode2
K0NBHE-T0DZDR-B3QSP6,K0NBHE-T0DZDR-B3QSP7
程式中根據前台傳入的資料,將最終的資料寫入到這個資料來源中,然後通過拆分這個資料來源擷取每一個欄位,調用列印方法,
Process.Start(bartendAdd, "/NOSPLASH /F=\"" + btw + "\" /D=\"" + sn + "\" /P /X");
3.通過FastReport列印
這裡重點說一下參數的傳遞和接收問題,其它的應該都還比較簡單,我們首先建立一個模板檔案,這裡值得一提的是,使用FastReport.Net設計器產生的檔案是以frx為尾碼的檔案,以FastReport.Studio設計器產生的檔案是以fr3為尾碼的檔案,當時我也搞不清楚則個區別,後來慢慢摸索出來的。
這裡傳入參數給報表:
這裡接收傳入的參數值:
預覽一下擷取參數之後的結果:
C#列印條碼的幾種方式