enn-pplb
v1.2.6
Published
pplb dll node翻译 ```javascript
Downloads
9
Readme
pplb dll node翻译
const dllPath = path.join(__dirname, "./Winpplb.dll")
console.log(dllPath)
const t = new PPLB(dllPath)
console.log(t.B_Get_DLL_Version(0))
console.log(t.B_GetUSBBufferLen())
console.log(t.B_EnumUSB())
let buf1 = Buffer.alloc(128)
let buf2 = Buffer.alloc(128)
t.B_GetUSBDeviceInfo(1, buf1, 128, buf2, 128)
console.log(buf1.toString(), buf2.toString())
let ret = t.B_CreatePrn(12, buf2)
console.log(ret)
console.log(t.B_Set_DebugDialog(1))
console.log(t.B_Set_Originpoint(0, 0))
console.log(t.B_Select_Option(2))
console.log(t.B_Set_Darkness(10))
console.log(t.B_Del_Pcx("*"))
console.log(t.B_Get_Graphic_ColorBMPEx(185, 0, 400, 240, 0, "bb1", "bb.bmp"))
console.log(t.B_Print_Out(1))
console.log(t.B_ClosePrn())
/******************************************************************************
Module: BWIN-CAPI.TXT
All commands for PPLB in Dynamic Link Library for Windows
Notices: Copyright (c) 1998-2013 ARGOX
******************************************************************************/
目錄
===============================================================================
(01)B_Bar2d_Maxi() => 印出一個 Maxi Code 2D Barcode。
(02)B_Bar2d_PDF417() => 印出一個 PDF-417 2D Barcode。
(03)B_Bar2d_PDF417_N() => 印出一個 PDF-417 2D Barcode。
(04)B_ClosePrn() => 關閉 Printer 工作。
(05)B_CreatePrn() => 開啟 Printer 工作。
(06)B_Del_Form() => 刪除 Form (表格)。
(07)B_Del_Pcx() => 刪除 Pcx 圖檔。
(08)B_Draw_Box() => 畫一個框。
(09)B_Draw_Line() => 畫一條線。
(10)B_Error_Reporting() => 開啟或關閉錯誤回傳功能。
(11)B_Get_DLL_Version() => 取得或秀出此函數庫版本資訊。
(12)B_Get_DLL_VersionA() => 取得或秀出此函數庫版本資訊。
(13)B_Get_Graphic_ColorBMP() => 轉換 BMP 圖檔彩色變灰階,並將圖形儲存在印表機內的 RAM。
(14)B_Get_Pcx() => 列印一個圖形並將圖形儲存在印表機內的 Memory。
(15)B_Initial_Setting() => 前置處理。
(16)B_Load_Pcx() => 列印一個圖形。
(17)B_Open_ChineseFont() => 開啟使用中文點矩陣字型檔案 (16*15 和 24*24)。
(18)B_Print_Form() => 列印一個 FORM (表格),並輸入 FORM 所有變數、計數資料。
(19)B_Print_MCopy() => 列印所有資料和加上跳號複製功能。
(20)B_Print_Out() => 列印所有資料。
(21)B_Prn_Barcode() => 印出一個條碼和加上跳號功能。
(22)B_Prn_Configuration() => 列印印表機內部配置。
(23)B_Prn_Text() => 印出一行文字和加上跳號功能。
(24)B_Prn_Text_Chinese() => 印出一行文字,使用中文點矩陣字型檔案 (16*15 或 24*24)。
(25)B_Prn_Text_TrueType() => 印出一行 True Type Font 文字。
(26)B_Prn_Text_TrueType_W() => 印出一行 True Type Font 文字,並控制字型的寬及高。
(27)B_Select_Option() => 設定轉印模式、啟動 Cutter 或 Peel。
(28)B_Select_Option2() => 設定轉印模式、啟動 Cutter 或 Peel。
(29)B_Select_Symbol() => 符號設定選擇。
(30)B_Select_Symbol2() => 符號設定選擇。
(31)B_Set_Backfeed() => 啟動 Back feed。
(32)B_Set_BMPSave() => 儲存影像圖檔。
(33)B_Set_Darkness() => 設定熱感頭列印熱度。
(34)B_Set_DebugDialog() => 設定除錯環境。
(35)B_Set_Direction() => 設定列印方向。
(36)B_Set_Form() => 儲存並列印 FORM (表格)。
(37)B_Set_Labgap() => 同時設定標籤長度及 GAP 長度。
(38)B_Set_Labwidth() => 設定標籤寬度。
(39)B_Set_Originpoint() => 設定開始列印點。
(40)B_Set_Prncomport() => 設定 Serial Port。
(41)B_Set_Prncomport_PC() => 設定 PC 序列埠。
(42)B_Set_Speed() => 設定列印速度。
(43)B_Set_ProcessDlg() => 開啟或關閉進度對話框
(44)B_GetUSBBufferLen() => 查詢 USB 埠資料長度
(45)B_EnumUSB() => 取得 USB 埠的資料
(46)B_CreateUSBPort() => 使用 USB 埠進行傳輸
(47)B_ResetPrinter() => 使印表機重新開機
(48)B_GetPrinterResponse() => 讀取印表機錯誤代碼
(49)B_TFeedMode() => T Feed模式切換
(50)B_TFeedTest() => T Feed模式紙張測試
(51)B_CreatePort() => 開啟傳輸埠進行傳輸
(52)B_Execute_Form() => 列印一個已存在列表機內的 FORM (表格),並輸入 FORM 所有變數、計數資料。
(53)B_Bar2d_QR() => 列印 QR 條碼
(54)B_GetNetPrinterBufferLen() => 查詢 Net Printer的資料長度。
(55)B_EnumNetPrinter() => 取得 Net Printer的資料。
(56)B_CreateNetPort() => 使用 Net 埠進行傳輸。
(57)B_Prn_Text_TrueType_Uni() => 印出一行由Unicode編碼文字所轉成的 True Type Font 文字。
(58)B_Prn_Text_TrueType_UniB() => 印出一行由Unicode編碼文字所轉成的 True Type Font 文字。
(59)B_GetUSBDeviceInfo() => 取得 USB 埠的裝置名稱和裝置路徑。
(60)B_Get_Graphic_ColorBMPEx() => 轉換 BMP 圖檔彩色變灰階,並將圖形儲存在印表機內的 RAM。
(61)B_Get_Graphic_ColorBMP_HBitmap() => 轉換 BMP 圖檔彩色變灰階,並將圖形儲存在印表機內的 RAM。
(62)B_WriteData() => 用來立即將資料傳送出或暫時寫入暫存區中。
(63)B_ReadData() => 取得印表機中的資料。
(64)B_Set_EncryptionKey() => 設定加密鑰匙的值。
(65)B_Check_EncryptionKey() => 確認加密鑰匙的正確性。
(66)B_Set_ErrorDlg() => 開啟或關閉重試詢問視窗。
(67)B_Bar2d_DataMatrix() => 列印 Data Matrix 條碼。
(68)B_Set_Backfeed_Offset() => 設定 Back Feed 偏移量(只用於撕紙模式).
(69)B_Set_CutPeel_Offset() => 設定裁切或剝紙偏移量(只用於裁切/剝紙模式).
(70)B_Set_CommTimeout() => 設定通信的時間.
(71)B_Get_CommTimeout() => 取得通信的時間.
(72)B_Set_LabelForSmartPrint() => 設定 Smart Print 中所需的資訊.
*******************************************************************************
注意事項
===============================================================================
1.你應該將DLL檔案放置在哪兒?
若使用32位元的DLL:
A.將DLL檔案和應用程式放在同一目錄下.(這是最好的方法)
B.在Windows 32位元作業系統中, 將DLL檔案放置在\Windows\System32目錄.
C.在Windows 64位元作業系統中, 將DLL檔案放置在\Windows\Syswow64目錄.
若使用64位元的DLL:
A.將DLL檔案和應用程式放在同一目錄下.(這是最好的方法)
B.在Windows 32位元作業系統中, 無法使用 64位元的DLL.
C.在Windows 64位元作業系統中, 將DLL檔案放置在\Windows\Syswow32目錄.
2.以下範例為 Visual C++ 及 Visual Basic 的範例,其他程式語言不一定完全相同。
*******************************************************************************
B_GetUSBBufferLen()
B_EnumUSB()
===============================================================================
功能: 取得 USB Printer 的裝置名稱及資料長度。
語法:
VC:
int B_GetUSBBufferLen(void);
int B_EnumUSB(char *buf);
VB: VBA:
Declare Function B_GetUSBBufferLen() As Long
Declare Function B_EnumUSB(ByVal buf As String) As Long
VB:
Declare Function B_GetUSBBufferLen() As Integer
Declare Function B_EnumUSB(ByVal buf As Byte()) As Integer
參數:
buf;
儲存 USB Printer 資料。
傳回值:
B_GetUSBBufferLen(); 傳回 USB Printer的資料長度。
B_EnumUSB() 0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
char *pbuf;
int nLen = B_GetUSBBufferLen() + 1;
if (nLen > 1) {
pbuf = (char *)new char[nLen];
B_EnumUSB(pbuf);
}
VB: VBA:
Dim nLen As Long
Dim pbuf As String
nLen = B_GetUSBBufferLen() + 1
If nLen > 1 Then
pbuf = Space(128)
Call B_EnumUSB(pbuf)
End If
VB.net:
Dim nLen As Integer
Dim pbuf(128) As Byte
nLen = B_GetUSBBufferLen() + 1
If nLen > 1 Then
Call B_EnumUSB(pbuf)
End If
說明: 這兩個函數是一組的函數。先用 B_GetUSBBufferLen() 取得 USB 傳輸埠的資料
長度, 然後再配記憶體給 B_EnumUSB() 儲存 USB 埠的資料。USB 埠的資料是以
("0x0d0x0a")做分隔,舉例來說, 如果資料是 A-200(0x0d)(0x0a)R-400ZIP的話表示
USB1 是接 A-200, USB2 是接 R-400Zip。
*******************************************************************************
B_GetUSBDeviceInfo()
===============================================================================
功能: 取得 USB Printer的裝置名稱和裝置路徑。
語法:
VC:
int B_GetUSBDeviceInfo(int nPort, char *pDeviceName, int *pDeviceNameLen,
char *pDevicePath, int *pDevicePathLen);
VB: VBA:
Declare Function B_GetUSBDeviceInfo(ByVal nPort As Long, _
ByVal pDeviceName As String, ByRef pDeviceNameLen As Long, _
ByVal pDevicePath As String, ByRef pDevicePathLen As Long) As Long
VB.net:
Declare Function B_GetUSBDeviceInfo(ByVal nPort As Integer, _
ByVal pDeviceName As Byte(), ByRef pDeviceNameLen As Integer, _
ByVal pDevicePath As Byte(), ByRef pDevicePathLen As Integer) As Integer
參數:
nPort;
指定要取得資料的USB printer, 由1開始.
pDeviceName;
儲存USB printer的裝置名稱, 若輸入時為空指標, 則不填資料.
pDeviceNameLen;
呼叫函式時要填入pDeviceName暫存區的長度; 輸出時則會回傳裝置名稱的長度.
pDevicePath;
儲存USB printer的裝置路徑, 若輸入時為空指標, 則不填資料.
pDevicePathLen;
呼叫函式時要填入pDevicePath暫存區的長度; 輸出時則會回傳裝置路徑的長度.
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
char buf1[128]={0}, buf2[128]={0};
int nLen1=128, nLen2=128, nlen;
nlen = B_GetUSBBufferLen() + 1;
if (nlen > 1) {
B_GetUSBDeviceInfo(1, buf1, &nLen1, buf2, &nLen2);
B_CreatePrn(12, buf2); //or B_CreatePort(6, 0, buf2);
}
VB: VBA:
Dim buf1 As String
Dim buf2 As String
Dim nLen1, nLen2, nlen As Long
nlen = B_GetUSBBufferLen() + 1
If nlen > 1 Then
nLen1 = 128
nLen2 = 128
buf1 = Space(nLen1)
buf2 = Space(nLen2)
Call B_GetUSBDeviceInfo(1, buf1, nLen1, buf2, nLen2)
Call B_CreatePrn(12, buf2) 'or Call B_CreatePort(6, 0, buf2)
End If
VB.net:
Dim buf1() As Byte
Dim buf2() As Byte
Dim nLen1, nLen2, nlen As Integer
Dim encAscII = System.Text.Encoding.ASCII
nlen = B_GetUSBBufferLen() + 1
If nlen > 1 Then
nLen1 = 128
nLen2 = 128
ReDim buf1(nLen1)
ReDim buf2(nLen2)
Call B_GetUSBDeviceInfo(1, buf1, nLen1, buf2, nLen2)
Call B_CreatePrn(12, encAscII.GetString(buf2, 0, nLen2))
'or Call B_CreatePort(6, 0, encAscII.GetString(buf2, 0, nLen2))
End If
說明: 此函式先呼叫 B_GetUSBBufferLen() 取得 USB printer的資料長度, 然後再呼叫
B_GetUSBDeviceInfo() 取得 USB printer的相關資料。
pDevicePath所儲存的資料是USB的裝置路徑, 可用在B_CreatePrn()及B_CreatePort()
來開啟USB裝置。
*******************************************************************************
B_GetNetPrinterBufferLen()
B_EnumNetPrinter()
===============================================================================
功能: 取得 Net Printer 的裝置名稱及資料長度。
語法:
VC:
int B_GetNetPrinterBufferLen(void);
int B_EnumNetPrinter(char *buf);
VB: VBA:
Declare Function B_GetNetPrinterBufferLen() As Long
Declare Function B_EnumNetPrinter(ByVal buf As String) As Long
VB.net:
Declare Function B_GetNetPrinterBufferLen() As Integer
Declare Function B_EnumNetPrinter(ByVal buf As Byte()) As Integer
參數:
buf;
儲存 Net Printer 資料。
傳回值:
B_GetNetPrinterBufferLen(); 傳回 Net Printer 的資料長度.
B_EnumNetPrinter(); 0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
char *pbuf;
int nLen = B_GetNetPrinterBufferLen() + 1;
if (nLen > 1) {
pbuf = (char *)new char[nLen];
B_EnumNetPrinter(pbuf);
}
VB: VBA:
Dim nLen As Long
Dim pbuf As String
nLen = B_GetNetPrinterBufferLen() + 1
If nLen > 1 Then
pbuf = Space(128)
Call B_EnumNetPrinter(pbuf)
End If
VB.net:
Dim nLen As Integer
Dim pbuf(128) As Byte
nLen = B_GetNetPrinterBufferLen() + 1
If nLen > 1 Then
Call B_EnumNetPrinter(pbuf)
End If
說明: 這兩個函數是一組的函數。先用 B_GetNetPrinterBufferLen() 取得 Net Printer
的資料長度, 然後再配記憶體給 B_EnumNetPrinter() 儲存 Net Printer 的資料。
Net Printer 的資料是以("0x0d0x0a")做分隔,舉例來說, 如果資料是
NetPrinter:192.168.1.2(0x0d)(0x0a)NetPrinter:192.168.1.25 的話表示
NetPrinter1 是接 NetPrinter:192.168.1.2,
NetPrinter2 是接 NetPrinter:192.168.1.25。
*******************************************************************************
B_CreatePrn()
===============================================================================
功能: 開啟 Printer 工作。
語法:
VC:
int B_CreatePrn(int selection, LPCTSTR filename);
VB: VBA:
Declare Function B_CreatePrn(ByVal selection As Long, _
ByVal filename As String) As Long
VB:
Declare Function B_CreatePrn(ByVal selection As Integer, _
ByVal filename As String) As Integer
參數:
selection;
選擇輸出埠或檔案。
0 -> print to file.
1 -> lpt1, 2 -> lpt2, 3 -> lpt3
4 -> com1, 5 -> com2, 6 -> com3
10 -> pipe, 11 -> USBXXX, 12 -> USB
13 -> LAN Client(TCP/IP)
filename;
當 selection 是 0 時,資料則輸出至檔案,filename 為檔案名稱,可含路徑。
當 selection 是 10 時,filename 為輸出路徑或機碼(裝置路徑)。
當 selection 是 11 時,filename 指的是想開啟的USB之index, index由1開始;
當 selection 是 12 時,filename 指的是想開啟的USB機碼(裝置路徑),
和nPort = 10的使用方法一樣
當 selection 內容是 13 時, filename 指的是想開啟的IP Address, 使用TCP/IP去開啟;
預設的port值為9100, 若要指定port值, 如80, 則在IPAddress後加上字串":80".
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_CreatePrn(1, NULL); or B_CreatePrn(0, "C:\\out.prn");
B_CreatePrn(10,"\\\\allen\\Label"); //share mode.
VB: VBA: VB.net:
Call B_CreatePrn(1, null) or Call B_CreatePrn(0, "C:\\out.prn")
Call B_CreatePrn(10, "\\\\allen\\Label")
說明: B_CreatePrn() 函數會開啟你選擇的輸出埠或開啟你鍵入的輸出檔。
而這個函數必須在所有函數之前執行。
B_CreatePrn(), B_CreateUSBPort() , B_CreateNetPort() 和 B_CreatePort() 不能同時使用。
*******************************************************************************
B_CreatePort()
===============================================================================
功能: 開啟 Printer 工作。
語法:
VC:
int B_CreatePort(int nPortType, int nPort, LPCTSTR filename);
VB: VBA:
Declare Function B_CreatePort(ByVal nPortType As Long, ByVal nPort As Long, _
ByVal filename As String) As Long
VB.net:
Declare Function B_CreatePort(ByVal nPortType As Integer, ByVal nPort As Integer, _
ByVal filename As String) As Integer
參數:
nPortType;
選擇輸出埠種類。
0 -> 檔案
1 -> Serial port
2 -> Parallel prot
4 -> USB port
5 -> LAN port
6 -> USB port
nPort;
選擇輸出埠編號。
當 nPortType 為 1 時, 1 -> com1, 2 -> com2,.....
filename;
當 nPortType 為 0 時,資料則輸出至檔案,filename 為檔案名稱,可含路徑。
當 nPortType 為 4 時,filename 指的是想開啟的USB的index, index由1開始.
當 nPortType 為 5 時,filename 指的是想開啟的IP Address, 使用TCP/IP,
port 9100去開啟.
當 nPortType 為 6 時,filename 指的是想開啟的USB的裝置路徑.
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_CreatePort(1, 1, NULL)
B_CreatePort(0, 0, "C:\\out.prn");
B_CreatePort(5, 0, "192.168.1.3");
VB: VBA: VB.net:
Call B_CreatePort(1, 1, null)
Call B_CreatePort(0, 0, "C:\\out.prn")
Call B_CreatePort(5, 0, "192.168.1.3")
說明: B_CreatePort() 函數會開啟你選擇的輸出埠或開啟你鍵入的輸出檔。
而這個函數必須在所有函數之前執行。
B_CreatePrn(), B_CreateUSBPort(), B_CreateNetPort() 和 B_CreatePort() 不能同時使用。
*******************************************************************************
B_CreateUSBPort()
B_CreateNetPort()
===============================================================================
功能: 開啟 Printer 工作。
使用 B_CreateUSBPort() 前需先呼叫 B_GetUSBBufferLen(),
這是為了和 B_EnumUSB() 及 B_GetUSBDeviceInfo() 同步。
使用 B_CreateNetPort() 前需先呼叫 B_GetNetPrinterBufferLen(),
這是為了和 B_EnumNetPrinter() 同步。
語法:
VC:
int B_CreateUSBPort(int nPort);
int B_CreateNetPort(int nPort);
VB: VBA:
Declare Function B_CreateUSBPort(ByVal nPort As Long) As Long
Declare Function B_CreateNetPort(ByVal nPort As Long) As Long
VB:
Declare Function B_CreateUSBPort(ByVal nPort As Integer) As Integer
Declare Function B_CreateNetPort(ByVal nPort As Integer) As Integer
參數:
nPort;
USB 傳輸埠 ; LAN 傳輸埠, nPort由1開始.
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
int nLen;
nLen = B_GetUSBBufferLen();
if (nLen) {
B_CreateUSBPort(1);
}
nLen = B_GetNetPrinterBufferLen();
if (nLen) {
B_CreateNetPort(1);
}
VB: VBA: VB.net:
Dim nLen As Long
nLen = B_GetUSBBufferLen()
If nLen Then
Call B_CreateUSBPort(1)
End If
nLen = B_GetNetPrinterBufferLen()
If nLen Then
Call B_CreateNetPort(1)
End If
說明: B_CreateUSBPort() 和 B_CreateNetPort()函數會開啟你選擇的輸出埠或
開啟你鍵入的輸出檔。而這個函數必須在所有函數之前執行。
B_CreatePrn(), B_CreateUSBPort() , B_CreateNetPort() 和 B_CreatePort() 不能同時使用。
*******************************************************************************
B_ClosePrn()
===============================================================================
功能: 關閉 Printer 工作。
語法:
VC:
void B_ClosePrn(void);
VB: VBA: VB.net:
Declare Sub B_ClosePrn()
範例:
VC:
B_ClosePrn();
VB: VBA: VB.net:
Call B_ClosePrn()
說明: 這個 B_ClosePrn 函數會關閉執行過的記憶體及你選擇的輸出埠或關閉你開啟的
輸出檔。而這個函數必須在所有函數之後執行。
*******************************************************************************
B_Bar2d_Maxi()
===============================================================================
功能: 印出一個 Maxi Code 2D Barcode。
語法:
VC:
int B_Bar2d_Maxi(int x, int y, int cl, int cc, int pc, LPCTSTR data);
VB: VBA:
Declare Function B_Bar2d_Maxi(ByVal x As Long, ByVal y As Long, ByVal cl As Long, _
ByVal cc As Long, ByVal pc As Long, ByVal data As String) As Long
VB.net:
Declare Function B_Bar2d_Maxi(ByVal x As Integer, ByVal y As Integer, _
ByVal cl As Integer, ByVal cc As Integer, ByVal pc As Integer, _
ByVal data As String) As Integer
參數:
x;
X 座標。
y;
Y 座標。
cl;
A 3-位數 Class code。
cc;
A 3-位數 Country code。
pc;
在美國 Post code 是一個4或5-位數,其他國家是 6 位數。
data;
資料字串,最多84個字元。
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_Bar2d_Maxi(50, 50, 300, 400, 93065, "This MaxiCode");
VB: VBA: VB.net:
Call B_Bar2d_Maxi(50, 50, 300, 400, 93065, "This MaxiCode")
說明: 這個 B_Bar2d_Maxi 函數可以列印出一個 Maxi Code 2D Barcode。
*******************************************************************************
B_Bar2d_PDF417()
===============================================================================
功能: 印出一個 PDF-417 2D Barcode。
語法:
VC:
int B_Bar2d_PDF417(int x, int y, int w, int v, int s, int c, int px, int py,
int r, int l, int t, int o, LPCTSTR data);
VB: VBA:
Declare Function B_Bar2d_PDF417(ByVal x As Long, ByVal y As Long, ByVal w As Long, _
ByVal v As Long, ByVal s As Long, ByVal c As Long, ByVal px As Long, _
ByVal py As Long, ByVal r As Long, ByVal l As Long, ByVal t As Long, _
ByVal o As Long, ByVal data As String) As Long
VB.net:
Declare Function B_Bar2d_PDF417(ByVal x As Integer, ByVal y As Integer, _
ByVal w As Integer, ByVal v As Integer, ByVal s As Integer, ByVal c As Integer, _
ByVal px As Integer, ByVal py As Integer, ByVal r As Integer, ByVal l As Integer, _
ByVal t As Integer, ByVal o As Integer, ByVal data As String) As Integer
參數:
x;
X 座標。
y;
Y 座標。(1 dot = 0.125 mm)
w;
最大列印寬度,單位 dots。
v;
最大列印高度,單位 dots。
s;
錯誤校正等級,範圍:0~8。
c;
資料壓縮等級,範圍:0 或 1。
px;
模組寬度,範圍:2~9 dots。
py;
模組高度,範圍:4~99 dots。
r;
最大 row count。
l;
最大 column count。
t;
Truncation flag,'0' 是 normal 和 '1' 是 truncated.
o;
列印方向定位,'0'是 0°,'1'是90°、'2'是180°,'3'是270°
data;
資料字串。
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_Bar2d_PDF417(10, 10, 400, 300, 0, 0, 3, 7, 10, 2, 0, 0, "ARGOXINFO");
VB: VBA: VB.net:
Call B_Bar2d_PDF417(10, 10, 400, 300, 0, 0, 3, 7, 10, 2, 0, 0, "ARGOXINFO")
說明: 這個 B_Bar2d_PDF417 函數可以列印出一個 PDF-417 2D Barcode。
*******************************************************************************
B_Bar2d_DataMatrix()
===============================================================================
功能: 印出一個 Data Matrix code。
語法:
VC:
int B_Bar2d_DataMatrix(int x, int y, int r, int l, int h, int v, LPCTSTR data);
VB: VBA:
Declare Function B_Bar2d_DataMatrix(ByVal x As Long, ByVal y As Long, ByVal r As Long, _
ByVal l As Long, ByVal h As Long, ByVal v As Long, ByVal data As String) As Long
VB.net:
Declare Function B_Bar2d_DataMatrix(ByVal x As Integer, ByVal y As Integer, _
ByVal r As Integer, ByVal l As Integer, ByVal h As Integer, _
ByVal v As Integer, ByVal data As String) As Integer
參數:
x;
X 座標。
y;
Y 座標。
r;
row count(範圍:9~49, 必須為偶數值; 0為自動)。
l;
column count(範圍:9~49, 必須為偶數值; 0為自動)。
h;
模組高度,範圍:1~40 dots。
v;
反轉條碼的影像。0 -> FALSE、1 -> TRUE。
data;
資料字串。
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_Bar2d_DataMatrix(10, 10, 0, 0, 5, 0, "DataMatrix");
VB: VBA: VB.net:
Call B_Bar2d_DataMatrix(10, 10, 0, 0, 5, 0, "DataMatrix")
說明: 這個 B_Bar2d_DataMatrix 函數可以列印出一個 Data Matrix code。
*******************************************************************************
B_Del_Form()
===============================================================================
功能: 刪除 Form (表格)。
語法:
VC:
int B_Del_Form(char formname[10]);
VB: VBA:
Declare Function B_Del_Form(ByVal formname As String) As Long
VB.net:
Declare Function B_Del_Form(ByVal formname As String) As Integer
參數:
formname;
表格名稱,最多 9 個字。
當 formname 內容是 '*'時將會清除印表機內所有表格。
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_Del_Form("demo");
VB: VBA: VB.net:
Call B_Del_Form("demo")
說明: 這個 B_Del_Form 函數會刪除印表機內,你輸入的 Form (表格)名稱。當
你刪除它後,將不能再還原,但可以重新載入。
*******************************************************************************
B_Del_Pcx()
===============================================================================
功能: 刪除儲存於RAM或Flash中的圖形。
語法:
VC:
int B_Del_Pcx(char pcxname[10]);
VB: VBA:
Declare Function B_Del_Pcx(ByVal pcxname As String) As Long
VB.net:
Declare Function B_Del_Pcx(ByVal pcxname As String) As Integer
參數:
pcxname;
圖形名稱,最多 9 個字。
當 pcxname 內容是 '*'時將會清除印表機內 RAM 或 flash memory 所有圖形。
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_Del_Pcx("*");
VB: VBA: VB.net:
Call B_Del_Pcx("*")
說明: 這個 B_Del_Pcx 函數會刪除印表機內,你輸入的圖形名稱。當你刪除它後,
將不能再還原,但可以重新載入。
*******************************************************************************
B_Draw_Box()
===============================================================================
功能: 畫一個框。
語法:
VC:
int B_Draw_Box(int x, int y, int thickness, int hor_dots, int ver_dots);
VB: VBA:
Declare Function B_Draw_Box(ByVal x As Long, ByVal y As Long, _
ByVal thickness As Long, ByVal hor_dots As Long, ByVal ver_dots As Long) As Long
VB.net:
Declare Function B_Draw_Box(ByVal x As Integer, ByVal y As Integer, _
ByVal thickness As Integer, ByVal hor_dots As Integer, _
ByVal ver_dots As Integer) As Integer
參數:
x;
起點 X 座標。
y;
起點 Y 座標。(1 dot = 0.125 mm)
thickness;
指定框四邊邊線厚度。
hor_dots;
對角點 X 座標。
ver_dots;
對角點 Y 座標。
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_Draw_Box(50, 120, 5, 250, 150);
VB: VBA: VB.net:
Call B_Draw_Box(50, 120, 5, 250, 150)
說明: 這個 B_Draw_Box 函數會畫一個屬性是 "OR" 的框。
*******************************************************************************
B_Draw_Line()
===============================================================================
功能: 畫一條線。
語法:
VC:
int B_Draw_Line(char mode, int x, int y, int hor_dots, int ver_dots);
VB: VBA:
Declare Function B_Draw_Line(ByVal mode As Byte, ByVal x As Long, ByVal y As Long, _
ByVal hor_dots As Long, ByVal ver_dots As Long) As Long
VB.net:
Declare Function B_Draw_Line(ByVal mode As Byte, ByVal x As Integer, _
ByVal y As Integer, ByVal hor_dots As Integer, ByVal ver_dots As Integer) As Integer
參數:
mode;
選擇線條種類,如下表:
+------+----------------------------+
| mode | 線條種類. |
+------+----------------------------+
| E | Exclusive OR |
+------+----------------------------+
| O | OR |
+------+----------------------------+
| W | 白線,它會蓋掉先前影像 |
+------+----------------------------+
x;
起點 X 座標。
y;
起點 Y 座標。(1 dot = 0.125 mm)
width;
水平長度。
height;
垂直長度。
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_Draw_Line('O', 50, 30, 100, 10);
VB: VBA: VB.net:
Call B_Draw_Line(Asc("O"), 50, 30, 100, 10)
說明: 這個 Draw_Line 函數會畫一個屬性是"OR"或"XOR"的線條及一條白線。
*******************************************************************************
B_Error_Reporting()
===============================================================================
功能: 開啟或關閉錯誤回傳功能。
語法:
VC:
int B_Error_Reporting(char option);
VB: VBA:
Declare Function B_Error_Reporting(ByVal options As Byte) As Long
VB.net:
Declare Function B_Error_Reporting(ByVal options As Byte) As Integer
參數:
option;
當 option 是'N'時 Disable 狀態回饋。
'S' 是 Enable 狀態回饋。
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_Error_Reporting('S');
VB: VBA: VB.net:
Call B_Error_Reporting(Asc("S"))
說明: 這個 B_Error_Reporting 函數會使印表機狀態回饋 Disable/Enable,這回
饋通道是透過 RS232 Port。預定值是 Disable。
*******************************************************************************
B_Get_DLL_Version()
B_Get_DLL_VersionA()
===============================================================================
功能: 取得或秀出此函數庫版本資訊。
語法:
VC:
char* B_Get_DLL_Version(int nShowMessage);
int B_Get_DLL_VersionA(int nShowMessage);
VB: VBA:
Declare Function B_Get_DLL_Version(ByVal nShowMessage As Long) As Long
Declare Function B_Get_DLL_VersionA(ByVal nShowMessage As Long) As Long
VB.net:
Declare Function B_Get_DLL_Version(ByVal nShowMessage As Integer) As String
Declare Function B_Get_DLL_VersionA(ByVal nShowMessage As Integer) As Integer
參數:
nShowMessage;
0 -> 訊息視窗不顯現。
1 -> 訊息視窗顯現。
傳回值:
B_Get_DLL_Version(); 傳回版本資訊字串,失敗則傳回 NULL。
B_Get_DLL_VersionA(); return version value.
主版號 = (return version value) / 100.
子版號 = (return version value) % 100.
範例:
VC:
int nVersion, nMainVersion, nSubVersion;
nVersion = B_Get_DLL_VersionA(1);
nMainVersion = nVersion / 100;
nSubVersion = nVersion % 100;
VB: VBA:
Dim nVersion, nMainVersion, nSubVersion As Long
nVersion = B_Get_DLL_VersionA(1)
nMainVersion = Int(nVersion / 100)
nSubVersion = nVersion Mod 100
VB.net:
Dim nVersion, nMainVersion, nSubVersion As Integer
nVersion = B_Get_DLL_VersionA(1)
nMainVersion = nVersion / 100
nSubVersion = nVersion Mod 100
說明: 這個 B_Get_DLL_Version 函數,讓使用者取得或秀出此函數庫版本資訊。
由於 B_Get_DLL_Version() 是回傳字串, 在 VB 和 VBA 的開發上, 需要使用
RtlMoveMemory() 去轉換然後才能取得, 此函式在使用上有技術上的難度,
因此 VB 和 VBA 的開發建議不要使用此函式, 請改用 B_Get_DLL_VersionA(),
若一定要使用 B_Get_DLL_Version(), 請參考 MSDN.
*******************************************************************************
B_Get_Graphic_ColorBMP()
B_Get_Graphic_ColorBMPEx()
B_Get_Graphic_ColorBMP_HBitmap()
===============================================================================
功能: 將 BMP 圖檔轉換成灰階模式,並將圖形儲存在印表機內的 RAM。
語法:
VC:
int B_Get_Graphic_ColorBMP(int x, int y, LPCTSTR filename);
int B_Get_Graphic_ColorBMPEx(int x, int y, int nWidth, int nHeight,
int rotate, LPCTSTR id_name, LPCTSTR filename);
int B_Get_Graphic_ColorBMP_HBitmap(int x, int y, int nWidth, int nHeight,
int rotate, LPCTSTR id_name, HBITMAP hbm);
VB: VBA:
Declare Function B_Get_Graphic_ColorBMP(ByVal x As Long, ByVal y As Long, _
ByVal filename As String) As Long
Declare Function B_Get_Graphic_ColorBMPEx(ByVal x As Long, _
ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, _
ByVal rotate As Long, ByVal id_name As String, ByVal filename As String) As Long
Declare Function B_Get_Graphic_ColorBMP_HBitmap(ByVal x As Long, _
ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, _
ByVal rotate As Long, ByVal id_name As String, ByVal hbm As Long) As Long
VB.net:
Declare Function B_Get_Graphic_ColorBMP(ByVal x As Integer, ByVal y As Integer, _
ByVal filename As String) As Integer
Declare Function B_Get_Graphic_ColorBMPEx(ByVal x As Integer, _
ByVal y As Integer, ByVal nWidth As Integer, ByVal nHeight As Integer, _
ByVal rotate As Integer, ByVal id_name As String, ByVal filename As String) As Integer
Declare Function B_Get_Graphic_ColorBMP_HBitmap(ByVal x As Integer, _
ByVal y As Integer, ByVal nWidth As Integer, ByVal nHeight As Integer, _
ByVal rotate As Integer, ByVal id_name As String, ByVal hbm As Integer) As Integer
參數:
x;
X 座標。
y;
Y 座標。
nWidth;
此參數表示原圖縮放後的圖形寬度,0表示使用原圖寬度。
nHeight;
此參數表示原圖縮放後的圖形高度,0表示使用原圖高度。
rotate;
此參數表示圖形縮放後旋轉的方向,'0'是 0°,'1'是90°、'2'是180°,'3'是270°。
id_name;
給予一個識別名稱存放於印表機內,以後直接使用 B_Load_Pcx() 即可將舊圖呼叫出來。
filename;
圖形檔名稱,可包含路徑。
格式如:XXXXXXXX.XXX 或 X:\\XXX\\XXX.XXX
hbm;
GDI 的 HBITMAP HANDLE, 只支援 IMAGE_BITMAP 格式。
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_Get_Graphic_ColorBMP(30, 20, "bb.bmp");
B_Get_Graphic_ColorBMPEx(30, 20, 200, 150, 2, "bb1", "bb.bmp");//180 angle.
HANDLE himage = LoadImage(NULL,"bb.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE);
B_Get_Graphic_ColorBMP_HBitmap(30, 20, 250, 80, 1, "bb2", (HBITMAP)himage);//90 angle.
VB: VBA:
Const IMAGE_BITMAP = 0
Const LR_LOADFROMFILE = &H10
Private Declare Function LoadImage Lib "user32" Alias "LoadImageA" (ByVal hInst As Long, _
ByVal lpsz As String, ByVal un1 As Long, ByVal n1 As Long, ByVal n2 As Long, _
ByVal un2 As Long) As Long
Private Declare Function DeleteObject Lib "Gdi32" (ByVal ho As Long) As Long
Call B_Get_Graphic_ColorBMP(30, 20, "bb.bmp")
Call B_Get_Graphic_ColorBMPEx(30, 20, 200, 150, 2, "bb1", "bb.bmp") ' 180 angle.
Dim himage As Long
himage = LoadImage(0, "bb.bmp", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE)
Call B_Get_Graphic_ColorBMP_HBitmap(30, 20, 250, 80, 1, "bb2", himage) ' 90 angle.
If himage Then
Call DeleteObject(himage)
End If
VB.net:
Const IMAGE_BITMAP = 0
Const LR_LOADFROMFILE = &H10
Private Declare Function LoadImage Lib "user32" Alias "LoadImageA" (ByVal hInst As Integer, _
ByVal lpsz As String, ByVal un1 As Integer, ByVal n1 As Integer, ByVal n2 As Integer, _
ByVal un2 As Integer) As Integer
Call B_Get_Graphic_ColorBMP(30, 20, "bb.bmp")
Call B_Get_Graphic_ColorBMPEx(30, 20, 200, 150, 2, "bb1", "bb.bmp") ' 180 angle.
Dim himage As Integer
himage = LoadImage(0, "bb.bmp", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE)
Call B_Get_Graphic_ColorBMP_HBitmap(30, 20, 250, 80, 1, "bb2", himage) ' 90 angle.
說明: 這個 B_Get_Graphic_ColorBMP() 函數可輸入任何位元數的 BMP 圖檔,並自動轉換
為黑白灰階圖檔送至印表機列印。
B_Get_Graphic_ColorBMPEx() 和 B_Get_Graphic_ColorBMP_HBitmap() 函式可做放大,
縮小及旋轉的功能,分別可利用檔名及 GDI 的 HBITMAP HANDLE 當資料來源。
*******************************************************************************
B_Get_Pcx()
===============================================================================
功能: 列印一個圖形並將圖形儲存在印表機內的 Memory。
語法:
VC:
int B_Get_Pcx(int x, int y, LPCTSTR filename);
VB: VBA:
Declare Function B_Get_Pcx(ByVal x As Long, ByVal y As Long, _
ByVal filename As String) As Integer
VB.net:
Declare Function B_Get_Pcx(ByVal x As Integer, ByVal y As Integer, _
ByVal filename As String) As Integer
參數:
x;
X 座標。
y;
Y 座標。(1 dot = 0.125 mm)
filename;
圖形檔名稱,可含路徑。
格式如:XXXXXXXX.XXX 或 X:\\XXX\\XXX.XXX
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_Get_Pcx(10,100,"phone.pcx");
VB: VBA: VB.net:
Call B_Get_Pcx(50, 30, "phone.pcx")
說明: 這個 B_Get_Pcx 函數會列印一個圖形並將圖形儲存在印表機內的 RAM 或
flash memory。圖形檔必須是 PCX 的格式。
*******************************************************************************
B_Initial_Setting()
===============================================================================
功能: 前置處理。
語法:
VC:
int B_Initial_Setting(int Type, LPCTSTR Source);
VB:
Declare Function B_Initial_Setting(ByVal Type As Long, _
ByVal Source As String) As Long
VB:
Declare Function B_Initial_Setting(ByVal Type As Integer, _
ByVal Source As String) As Integer
參數:
Type;
選擇輸入模式。
0 -> 輸入字串,1 -> 輸入檔案。
Source;
資料來源,可為字串或檔案名稱,可含路徑。
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
LPCTSTR aa = "ZT\r\n";
B_Initial_Setting(0, aa);
or
B_Initial_Setting(1, "initfile.txt");
VB: VBA: VB.net:
Dim aa As String
aa = "ZT" + Chr(13) + Chr(10)
Call B_Initial_Setting(0, aa)
or
Call B_Initial_Setting(1, "initfile.txt")
說明: 這個 B_Initial_Setting 函數前置處理的動作,是將一串 Command 先送至印表
機,由字串或檔案輸入,在使用這個函數時,須先在 B_Create_Prn() 之後其他
函數之前,可作為使用者自訂型態。
*******************************************************************************
B_WriteData()
===============================================================================
功能: 用來立即將資料傳送出或暫時寫入暫存區中。
語法:
VC:
int B_WriteData(int IsImmediate, LPCTSTR pbuf, DWORD length);
VB: VBA:
Declare Function B_WriteData(ByVal IsImmediate As Long, _
ByVal pbuf As String, ByVal length As Long) As Long
VB.net:
Declare Function B_WriteData(ByVal IsImmediate As Integer, _
ByVal pbuf As Byte(), ByVal length As ULong) As Integer
參數:
IsImmediate;
1為立即傳送, 只傳pbuf中的內容至輸出埠;
0為將資料加到暫存區後, 等呼叫B_Print_Out()時才傳送。
pbuf;
要傳送的資料指標。
length;
pbuf的資料長度。
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
const char sznop1[] = "nop_front\r\n";
const char sznop2[] = "nop_middle\r\n";
B_WriteData(0, sznop2, (DWORD)strlen(sznop2));
B_WriteData(1, sznop1, (DWORD)strlen(sznop1));
VB: VBA:
Dim sznop1 As String = "nop_front" + vbCrLf
Dim sznop2 As String = "nop_middle" + vbCrLf
Call B_WriteData(0, sznop2, Len(sznop2))
Call B_WriteData(1, sznop1, Len(sznop1))
VB.net:
Dim encAscII = System.Text.Encoding.ASCII
Dim sznop1 As String = "nop_front" + vbCrLf
Dim sznop2 As String = "nop_middle" + vbCrLf
Call B_WriteData(0, encAscII.GetBytes(sznop2), sznop2.Length)
Call B_WriteData(1, encAscII.GetBytes(sznop1), sznop1.Length)
說明: 此函式用來將使用者想要對印表機下達的控制指令或任何列印資料, 皆可利用此
函式來完成。
*******************************************************************************
B_ReadData()
===============================================================================
功能: 取得印表機中的資料。
語法:
VC:
int B_ReadData(LPTSTR pbuf, DWORD length, DWORD dwTimeoutms);
VB: VBA:
Declare Function B_ReadData(ByVal pbuf As String, ByVal length As Long, _
ByVal dwTimeoutms As Long) As Long
VB.net:
Declare Function B_ReadData(ByVal pbuf As Byte(), ByVal length As ULong, _
ByVal dwTimeoutms As ULong) As Integer
參數:
pbuf;
要接收回傳資料的指標。如果它是空指標, 則不填資料。
length;
要讀取的資料大小。
dwTimeoutms;
計數時間, 也就是讀取資料最長的時間, 單位為ms。
傳回值:
已讀取的資料大小。
範例:
VC:
int ret;
char temp[10]={0};
B_WriteData(1, "^ee\r\n", 5);//^ee
ret = B_ReadData(temp, 4, 1000);//1 second.
VB: VBA:
Dim ret As Integer
Dim temp As String
temp = Space(10)
temp = "^ee\r\n"
B_WriteData(1, temp, 5) '^ee
ret = B_ReadData(pbuf, 4, 1000) '1 second.
VB.net:
Dim ret As Integer
Dim temp(10) As Byte
B_WriteData(1, encAscII.GetBytes("^ee\r\n"), 5) '^ee
ret = B_ReadData(pbuf, 4, 1000) '1 second.
說明: 此函式用來讀取印表機的回傳資料, 所以請注意使用的通訊埠是否有資料回傳的
能力。請和B_WriteData() 函數配合使用, 並參考"Argox programmer's manual"。
*******************************************************************************
B_Load_Pcx()
===============================================================================
功能: 列印一個圖形。
語法:
VC:
int B_Load_Pcx(int x, int y, char pcxname[10]);
VB: VBA:
Declare Function B_Load_Pcx(ByVal x As Long, ByVal y As Long, _
ByVal pcxname As String) As Long
VB.net:
Declare Function B_Load_Pcx(ByVal x As Integer, ByVal y As Integer, _
ByVal pcxname As String) As Integer
參數:
x;
X 座標。
y;
Y 座標。備註:1 dot = 0.125 mm。
pcxname;
圖形檔名稱最大9個字元。
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_Load_Pcx(50, 30, "phone");
VB: VBA: VB.net:
Call B_Load_Pcx(50, 30, "phone")
說明: 這個 B_Load_Pcx 函數會列印一個 PCX 格式圖形,而圖形必須事先載入印表
機內的 RAM 或 flash memory 儲存。
*******************************************************************************
B_Open_ChineseFont()
===============================================================================
功能: 開啟使用中文點矩陣字型檔案 (16*15 和 24*24)。
語法:
VC:
int B_Open_ChineseFont(char* path);
VB: VBA:
Declare Function B_Open_ChineseFont(ByVal path As String) As Long
VB:
Declare Function B_Open_ChineseFont(ByVal path As String) As Integer
參數:
path;
中文點矩陣字型檔案來源路徑。
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_Open_ChineseFont("C:\\ET3");
VB: VBA: VB.net:
Call B_Open_ChineseFont("C:\\ET3")
說明: 這個 B_Open_ChineseFont 函數開啟中文點矩陣字型檔案 (16*15 和 24*24),
供 B_Prn_Text_Chinese 函數使用。
*******************************************************************************
B_Print_Form()
===============================================================================
功能: 列印一個 FORM (表格),並輸入 FORM 所有變數、計數資料。
語法:
VC:
int B_Print_Form(int labset, int copies, char form_out[10], LPTSTR var);
VB: VBA:
Declare Function B_Print_Form(ByVal labset As Long, ByVal copies As Long, _
ByVal form_out As String, ByVal var As String) As Long
VB.net:
Declare Function B_Print_Form(ByVal labset As Integer, ByVal copies As Integer, _
ByVal form_out As String, ByVal var As String) As Integer
參數:
labset;
列印的份數,範圍:1~32767。
copies;
複製的份數,範圍:1~32767。
form_out;
表格名稱,同於之前載入的 FORM 名稱,或原先儲存在印表機內的 FORM。
var;
輸入 FORM 所有變數、計數資料,用 ","依序分別區隔開。如果變數裡有","號,
可用";,"來代表逗號。
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_Print_form(3, 2, "demo", "2000,Bicycle");
VB: VBA: VB.net:
Call B_Print_form(3, 2, "demo", "2000,Bicycle")
說明: 這個 B_Print_Form 函數會送所有資料及表格到 Printer,這個函數使用前
須先執行 B_Set_Form(),並在所有函數之後,B_ClosePrn() 之前執行。當使
用此函數時,就不須執行 B_Print_Out()。
*******************************************************************************
B_Print_MCopy()
===============================================================================
功能: 列印所有資料和加上跳號複製功能。
語法:
VC:
int B_Print_MCopy(int labset, int copies);
VB: VBA:
Declare Function B_Print_MCopy(ByVal labset As Long, _
ByVal copies As Long) As Long
VB.net:
Declare Function B_Print_MCopy(ByVal labset As Integer, _
ByVal copies As Integer) As Integer
參數:
labset;
列印的份數,1 ~ 32767。
copies;
複製的份數,1 ~ 32767。
當為 1 時同等於Print_Out()功能。
傳回值:
0-> OK.
Reference BW-Error.txt file.
範例:
VC:
B_Print_MCopy(2, 2);
VB: VBA: VB.net:
Call B_Print_MCopy(2, 2)
說明: 這個 B_Print_MCopy 函數會送所有資料到 Printer,這個函數須在所有函數之後,
B_ClosePrn() 之前執行,當使用此函數時,就不須執行 B_Print_Out()。
它包含 B_Print_Out() 所有功能。
*******************************************************************************
B_Print_Out()
===============================================================================
功能: 列印所有資料。
語法:
VC:
int B_Print_Out(int labset);
VB: VBA:
Declare Function B_Print_Out(ByVal labset As Long) As Long
VB.net:
Declare Function B_Print_Out(ByVal labset As Integer) As Integer
參數:
labset;
列印的份數。
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_Print_Out(1);
VB: VBA: VB.net:
Call B_Print_Out(1)
說明: 這個 B_Print_Out 函數會送所有資料到 Printer,這個函數須在所有函數之後,
B_ClosePrn() 之前執行。
*******************************************************************************
B_Prn_Barcode()
===============================================================================
功能: 印出一個條碼和加上跳號功能。
語法:
VC:
int B_Prn_Barcode(int x, int y, int ori, char type[4], int n, int w, int height,
char human, LPCTSTR data);
VB: VBA:
Declare Function B_Prn_Barcode(ByVal x As Long, ByVal y As Long, ByVal ori As Long, _
ByVal TType As String, ByVal narrow As Long, ByVal width As Long, _
ByVal height As Long, ByVal human As Byte, ByVal data As String) As Long
VB.net:
Declare Function B_Prn_Barcode(ByVal x As Integer, ByVal y As Integer, _
ByVal ori As Integer, ByVal TType As String, ByVal narrow As Integer, _
ByVal width As Integer, ByVal height As Integer, ByVal human As Byte, _
ByVal data As String) As Integer
參數:
x;
X 座標。
y;
Y 座標。
ori;
列印方向定位,'0'是 0°,'1'是90°、'2'是180°,'3'是270°
type;
條碼型式、如下表:
+========================================================================+
| type| 條碼總類 | type| 條碼總類 |
+========================================================================+
| 0 | Code 128 UCC (shipping cont-| E80| EAN-8 |
| | ainer code) +-----+------------------------------+
+-----+-----------------------------+ E82| EAN-8 2 digit add-on |
| 1 | Code 128 subset A,B and C +-----+------------------------------+
+-----+-----------------------------+ E85| EAN-8 5 digit add-on |
| 1E | UCC/EAN +-----+------------------------------+
+-----+-----------------------------+ K | Codabar |
| 2 | Interleaved 2 of 5 +-----+------------------------------+
+-----+-----------------------------+ P | Postnet |
| 2C | Interleaved 2 of 5 with che-+-----+------------------------------+
| | ck sum digit | UA0| UPC-A |
+-----+-----------------------------+-----+------------------------------+
| 2D | Interleaved 2 of 5 with hum-| UA2| UPC-A 2 digit add-on |
| | an readable check digit +-----+------------------------------+
+-----+-----------------------------+ UA5| UPC-A 5 digit add-on |
| 2G | German Postcode +-----+------------------------------+
+-----+-----------------------------+ UE0| UPC-E |
| 2M | Matrix 2 of 5 +-----+------------------------------+
+-----+-----------------------------+ UE2| UPC-E 2 digit add-on |
| 2U | UPC Interleaved 2 of 5 +-----+------------------------------+
+-----+-----------------------------+ UE5| UPC-E 5 digit add-on |
| 3 | Code 3 of 9 +-----+------------------------------+
+-----+-----------------------------+ R14|RSS-14 |
| 3C | Code 3 of 9 with check sum +-----+------------------------------+
| | digit | RL |RSS Limited |
+-----+-----------------------------+-----+------------------------------+
| 9 | Code 93 | RS |RSS Stacked |
+-----+-----------------------------+-----+------------------------------+
| E30| EAN-13 | RT |RSS Truncated |
+-----+-----------------------------+-----+------------------------------+
| E32| EAN-13 2 digit add-on | RSO|RSS Stacked Omnidirectiona |
+-----+-----------------------------+-----+------------------------------+
| E35| EAN-13 5 digit add-on | REX|RSS Expanded |
+-----+-----------------------------+-----+------------------------------+
n;
NARROW bar 寬度在最小單位,
若是RSS條碼,則此參數為條碼寬度的倍數,範圍為1~10,預設值為1。
w;
WIDE bar 寬度在最小單位,
若是RSS條碼,則此參數為每列條碼可包含的最大資料區塊數量,只在使用RSS Expanded條碼時
有效,在其它類型的RSS條碼中則為無效參數,範圍為2~22,預設值為22,且此值必需為偶數。
height;
條碼高度。
RSS條碼的標準的最小高度限制:
R14 -> 33 pixels
RL -> 10 pixels
RS -> 13 pixels
RT -> 13 pixels
RSO -> 69 pixels
REX -> 34 pixels
human;
當 human 是'N'時,則不列印文字,當 human 是'B'時,則列印可讀文字。
data;
資料字串,於資料末端加上<Operation Number>,則可有跳號功能,
Operation: + or - 記號,Number: 0 ~ 32768 數值。
若在RSS需要加上2D(composite symbol)的資料時, 需加上'|'符號, 如1234567890123|123.
RSS條碼的最大數值限制:
R14 -> 9999999999999
RL -> 1999999999999
RS -> 9999999999999
RT -> 9999999999999
RSO -> 9999999999999
REX -> 74 digits
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_Prn_Barcode(650, 15, 0, "E80", 2, 2, 51, 'B', "1234567"); // no counter
or
B_Prn_Barcode(650, 15, 0, "E80", 2, 2, 51, 'B', "1234567<+10>");//have a counter
or
B_Prn_Barcode(650, 15, 0, "R14", 2, 0, 33, 'B', "1234567890123|R14"); DataBar + CS
VB: VBA: VB.net:
Call B_Prn_Barcode(650, 15, 0, "E80", 2, 2, 51, Asc("B"), "1234567")
'no counter
or
Call B_Prn_Barcode(650, 15, 0, "E80", 2, 2, 51, Asc("B"), "1234567<+10>")
'have a counter
or
Call B_Prn_Barcode(650, 15, 0, "R14", 2, 0, 33, Asc("B"), "1234567890123|R14")
'DataBar + CS
說明: 這個 B_Prn_Barcode 函數可以列印出一個特定 Barcode 和加上跳號功能。
*******************************************************************************
B_Prn_Configuration()
===============================================================================
功能: 列印印表機內部配置。
語法:
VC:
void B_Prn_Configuration(void);
VB: VBA: VB.net:
Declare Sub B_Prn_Configuration()
範例:
VC:
B_Prn_Configuration();
VB: VBA: VB.net:
Call B_Prn_Configuration()
說明: 這個 B_Prn_Configuration 函數會列印印表機內部配置,包含設定、
firmware 版本、accessories、等....。
*******************************************************************************
B_Prn_Text()
===============================================================================
功能: 印出一行文字和加上跳號功能。
語法:
VC:
int B_Prn_Text(int x, int y, int ori, int font, int hor_factor, int ver_factor,
char mode, LPCTSTR data);
VB: VBA:
Declare Function B_Prn_Text(ByVal x As Long, ByVal y As Long, ByVal ori As Long, _
ByVal font As Long, ByVal hor_factor As Long, ByVal ver_factor As Long, _
ByVal mode As Byte, ByVal data As String) As Long
VB.net:
Declare Function B_Prn_Text(ByVal x As Integer, ByVal y As Integer, _
ByVal ori As Integer, ByVal font As Integer, ByVal hor_factor As Integer, _
ByVal ver_factor As Integer, ByVal mode As Byte, ByVal data As String) As Integer
參數:
x;
X 座標。
y;
Y 座標。
ori;
列印方向定位,'0'是 0°,'1'是90°、'2'是180°,'3'是270°
font;
選擇字形,1~5 選擇常佇字形。
hor_factor;
水平放大比例,範圍:1~24。
ver_factor;
垂直放大比例,範圍:1~24。
mode;
反白功能,'N'普通文字,'R'反白文字。
data;
資料字串,當尾端資料加上 <Operation Number> 格式為加上跳號功能,
Operation: + or - 記號,Number: 0 ~ 32768 數值。
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_Prn_Text(50, 110, 0, 4, 1, 1, 'N', "A123456"); //無跳號功能
or
B_Prn_Text(50, 110, 0, 4, 1, 1, 'N', "A123456<-1>"); //有跳號功能
VB: VBA; VB.net:
B_Prn_Text(50, 110, 0, 4, 1, 1, Asc("N"), "A123456") 'no counter
or
B_Prn_Text(50, 110, 0, 4, 1, 1, Asc("N"), "A123456<-1>") 'have a counter
說明: 這個 B_Prn_Text 函數可以列印出一行文字和加上跳號功能。
*******************************************************************************
B_Prn_Text_Chinese()
===============================================================================
功能: 印出一行文字,使用中文點矩陣字型檔案 (16*15 或 24*24)。
語法:
VC:
int B_Prn_Text_Chinese(int x, int y, int fonttype, LPCTSTR id_name, LPCTSTR data);
VB: VBA:
Declare Function B_Prn_Text_Chinese(ByVal x As Long, ByVal y As Long, _
ByVal fonttype As Long, ByVal id_name As String, ByVal data As String) As Long
VB.net:
Declare Function B_Prn_Text_Chinese(ByVal x As Integer, ByVal y As Integer, _
ByVal fonttype As Integer, ByVal id_name As String, ByVal data As String) As Integer
參數:
x;
X 座標。(dot)
y;
Y 座標。(dot)
fonttype;
矩陣字型選擇。0 -> 16*15、1 -> 24*24。
id_name;
給予一個識別名稱存放於印表機內,以後直接使用 B_Load_Pcx() 即可將舊圖呼叫出來。
data;
文字內容。
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_Open_ChineseFont("C:\\ET3");
B_Prn_Text_Chinese(100, 100, 0, "A01", "國家利益當前AbCcDd");
VB: VBA; VB.net:
Call B_Open_ChineseFont("C:\\ET3")
Call B_Prn_Text_Chinese(100, 100, 0, "A01", "國家利益當前AbCcDd")
說明: 這個 B_Prn_Text_Chinese 函數可以印出一行文字,使用中文點矩陣字型檔案
(16*15 或 24*24)。
*******************************************************************************
B_Prn_Text_TrueType()
B_Prn_Text_TrueType_W()
B_Prn_Text_TrueType_Uni()
B_Prn_Text_TrueType_UniB()
===============================================================================
功能: 印出一行 True Type Font 文字。
語法:
VC:
int B_Prn_Text_TrueType(int x, int y, int FSize, LPCTSTR FType, int Fspin,
int FWeight, int FItalic, int FUnline, int FStrikeOut, LPCTSTR id_name,
LPCTSTR data);
int B_Prn_Text_TrueType_W(int x, int y, int FHeight, int FWidth, LPCTSTR FType,
int Fspin, int FWeight, int FItalic, int FUnline, int FStrikeOut, LPCTSTR id_name,
LPCTSTR data);
int B_Prn_Text_TrueType_Uni(int x, int y, int FSize, LPCTSTR FType, int Fspin,
int FWeight, int FItalic, int FUnline, int FStrikeOut, LPCTSTR id_name,
LPCWSTR data, int format);
int B_Prn_Text_TrueType_UniB(int x, int y, int FSize, LPCTSTR FType, int Fspin,
int FWeight, int FItalic, int FUnline, int FStrikeOut, LPCTSTR id_name,
LPCTSTR data, int format);
VB: VBA:
Declare Function B_Prn_Text_TrueType(ByVal x As Long, ByVal y As Long, _
ByVal FSize As Long, ByVal FType As String, ByVal Fspin As Long, _
ByVal FWeight As Long, ByVal FItalic As Long, ByVal FUnline As Long, _
ByVal FStrikeOut As Long, ByVal id_name As String, ByVal data As String) As Long
Declare Function B_Prn_Text_TrueType_W(ByVal x As Long, ByVal y As Long, _
ByVal FHeight As Long, ByVal FWidth As Long, ByVal FType As String, _
ByVal Fspin As Long, ByVal FWeight As Long, ByVal FItalic As Long, _
ByVal FUnline As Long, ByVal FStrikeOut As Long, ByVal id_name As String, _
ByVal data As String) As Long
Declare Function B_Prn_Text_TrueType_Uni(ByVal x As Long, ByVal y As Long, _
ByVal FSize As Long, ByVal FType As String, ByVal Fspin As Long, _
ByVal FWeight As Long, ByVal FItalic As Long, ByVal FUnline As Long, _
ByVal FStrikeOut As Long, ByVal id_name As String, ByRef data As Byte, _
ByVal format As Long) As Long
Declare Function B_Prn_Text_TrueType_UniB(ByVal x As Long, ByVal y As Long, _
ByVal FSize As Long, ByVal FType As String, ByVal Fspin As Long, _
ByVal FWeight As Long, ByVal FItalic As Long, ByVal FUnline As Long, _
ByVal FStrikeOut As Long, ByVal id_name As String, ByRef data As Byte, _
ByVal format As Long) As Long
VB.net:
Declare Function B_Prn_Text_TrueType(ByVal x As Integer, ByVal y As Integer, _
ByVal FSize As Integer, ByVal FType As String, ByVal Fspin As Integer, _
ByVal FWeight As Integer, ByVal FItalic As Integer, ByVal FUnline As Integer, _
ByVal FStrikeOut As Integer, ByVal id_name As String, _
ByVal data As String) As Integer
Declare Function B_Prn_Text_TrueType_W(ByVal x As Integer, ByVal y As Integer, _
ByVal FHeight As Integer, ByVal FWidth As Integer, ByVal FType As String, _
ByVal Fspin As Integer, ByVal FWeight As Integer, ByVal FItalic As Integer, _
ByVal FUnline As Integer, ByVal FStrikeOut As Integer, ByVal id_name As String, _
ByVal data As String) As Integer
Declare Function B_Prn_Text_TrueType_Uni(ByVal x As Integer, ByVal y As Integer, _
ByVal FSize As Integer, ByVal FType As String, ByVal Fspin As Integer, _
ByVal FWeight As Integer, ByVal FItalic As Integer, ByVal FUnline As Integer, _
ByVal FStrikeOut As Integer, ByVal id_name As String, ByVal data As Byte(), _
ByVal format As Integer) As Integer
Declare Function B_Prn_Text_TrueType_UniB(ByVal x As Integer, ByVal y As Integer, _
ByVal FSize As Integer, ByVal FType As String, ByVal Fspin As Integer, _
ByVal FWeight As Integer, ByVal FItalic As Integer, ByVal FUnline As Integer, _
ByVal FStrikeOut As Integer, ByVal id_name As String, ByVal data As Byte(), _
ByVal format As Integer) As Integer
參數:
x;
X 座標, 單位: 像素。
y;
Y 座標, 單位: 像素。
FSize;
TrueType font size,單位為點(dot)。
FHeight;
字型高度,單位為點(dot)。
FWidth;
字型寬度,單位為點(dot)。
FSize / FHeight / FWidth = (dpi * point) / 72.
FType;
TrueType font 字型名稱。
Fspin;
TrueType font 字體旋轉。1 -> 0, 2 -> 90, 3 -> 180, 4 -> 270
FWeight;
TrueType font 字體粗細。
0 and NULL and 400 -> 400 標準、
100 -> 非常細、200 -> 極細、
300 -> 細 、500 -> 中等、
600 -> 半粗 、700 -> 粗 、
800 -> 特粗 、900 -> 黑體。
FItalic;
TrueType font 字體斜體。0 -> FALSE、1 -> TRUE。
FUnline;
TrueType font 字體加底線。0 -> FALSE、1 -> TRUE。
FStrikeOut;
TrueType font 字體加刪除線。0 -> FALSE、1 -> TRUE。
id_name;
給予一個識別名稱存放於印表機內,以後直接使用 B_Load_Pcx() 即可將舊圖呼叫出來。
data;
文字內容。
B_Prn_Text_TrueType_Uni()與B_Prn_Text_TrueType_UniB()所輸入的data格式為UTF-8、
UTF-16或Unicode big endian之字串,且需為0結尾。
format;
決定Unicode data的解碼方式。
0 -> 由字串開頭的BOM(Byte Order Mark)決定。
1 -> UTF-16。
2 -> Unicode big endian。
3 -> UTF-8。
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
char *pbuf = new char[128];
B_Prn_Text_TrueType(30, 100, 30, "Arial", 1, 400, 0, 0, 0, "AA", "TrueType Font");
//save in printer.
B_Prn_Text_TrueType_W(30, 160, 20, 20, "Times New Roman", 1, 400, 0, 0, 0, "AB",
"TT_W: 多字元測試");
B_Prn_Text_TrueType_Uni(30, 220, 30, "Times New Roman", 1, 400, 0, 0, 0, "AC",
L"TT_Uni: 多字元測試",1);//UTF-16
strcpy(pbuf, "\xFF\xFE");//UTF-16.
memcpy(&pbuf[2], (char *)L"TT_UniB: 多字元測試", 15*2);//copy mutil byte.
B_Prn_Text_TrueType_UniB(30, 280, 30, "Times New Roman", 1, 400, 0, 0, 0, "AD",
pbuf, 0);//Byte Order Mark.
VB:
Dim buff1(128) As Byte
Dim buff2() As Byte
Dim i As Long
Call B_Prn_Text_TrueType(30, 100, 30, "Arial", 1, 400, 0, 0, 0, "AA", _
"TrueType Font") 'save in printer.
Call B_Prn_Text_TrueType_W(30, 160, 20, 20, "Times New Roman", 1, 400, 0, 0, 0, _
"AB", "TT_W: 多字元測試")
buff2 = StrConv("TT_Uni: 多字元測試", vbNarrow)
'Converts UNICODE(wide characters) to single-byte characters.
For i = LBound(buff2) To UBound(buff2)
buff1(i) = buff2(i)
Next i
buff1(26) = 0 'null.
buff1(27) = 0
Call B_Prn_Text_TrueType_Uni(30, 220, 30, "Times New Roman", 1, 400, 0, 0, 0, _
"AC", buff1(0), 1) 'UTF-16
buff1(0) = 255 'UTF-16.
buff1(1) = 254
buff2 = StrConv("TT_UniB: 多字元測試", vbNarrow)
'Converts UNICODE(wide characters) to single-byte characters.
For i = LBound(buff2) To UBound(buff2)
buff1(i + 2) = buff2(i)
Next i
buff1(30) = 0 'null.
buff1(31) = 0
Call B_Prn_Text_TrueType_UniB(30, 280, 30, "Times New Roman", 1, 400, 0, 0, 0, _
"AD", buff1(0), 0) 'Byte Order Mark.
VB.net:
Dim pbuf(128) As Byte
Dim encUnicode = System.Text.Encoding.Unicode
Call B_Prn_Text_TrueType(30, 100, 30, "Arial", 1, 400, 0, 0, 0, "AA", "TrueType Font")
'save in printer.
Call B_Prn_Text_TrueType_W(30, 160, 20, 20, "Times New Roman", 1, 400, 0, 0, 0, _
"AB", "TT_W: 多字元測試")
Call B_Prn_Text_TrueType_Uni(30, 220, 30, "Times New Roman", 1, 400, 0, 0, 0, _
"AC", encUnicode.GetBytes("TT_Uni: 多字元測試"), 1) 'UTF-16
pbuf(0) = 255 'UTF-16.
pbuf(1) = 254
encUnicode.GetBytes("TT_UniB: 多字元測試", 0, 14, pbuf, 2) 'copy mutil byte.
pbuf(30) = 0 'null.
pbuf(31) = 0
Call B_Prn_Text_TrueType_UniB(30, 280, 30, "Times New Roman", 1, 400, 0, 0, 0, _
"AD", pbuf, 0) 'Byte Order Mark.
說明: 這個 B_Prn_Text_TrueType() 函數可以印出一行 True Type Font 文字。
*******************************************************************************
B_Select_Option()
B_Select_Option2()
===============================================================================
功能: 設定轉印模式、啟動 Cutter 或 Peel。
語法:
VC:
int B_Select_Option(int object);
int B_Select_Option2(int object, int p);
VB: VBA:
Declare Function B_Select_Option(ByVal object As Long) As Long
Declare Function B_Select_Option2(ByVal object As Long, ByVal p As Long) As Long
VB.net:
Declare Function B_Select_Option(ByVal object As Integer) As Integer
Declare Function B_Select_Option2(ByVal object As Integer, _
ByVal p As Integer) As Integer
參數:
object;
印表機功能選項。
1 -> 開啟熱轉,關閉 Cutter 和 Peel。
2 -> 開啟熱感,關閉 Cutter 和 Peel。
3 -> 開啟熱感和 Cutter,關閉 Peel。
4 -> 開啟熱感和 Peel,關閉 Cutter。
5 -> 開啟熱轉和 Cutter,關閉 Peel。
6 -> 開啟熱轉和 Peel,關閉 Cutter。
p;
設定Cutter裁切張數,使用Cutter時才有效.
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_Select_Option(1);
B_Select_Option2(3, 2);
VB: VBA: VB.net:
Call B_Select_Option(1)
Call B_Select_Option2(2, 3)
說明: B_Select_Option, B_Select_Option2函數可以選擇不同 Printer 選項,使印
表機依據這些選項工作。
*******************************************************************************
B_Select_Symbol()
B_Select_Symbol2()
===============================================================================
功能: 符號設定選擇。
語法:
VC:
int B_Select_Symbol(int num_bit, int symbol, int country);
int B_Select_Symbol2(int num_bit, char csymbol[2], int country);
VB: VBA:
Declare Function B_Select_Symbol(ByVal num_bit As Long, ByVal symbol As Long, _
ByVal country As Long) As Long
Declare Function B_Select_Symbol2(ByVal num_bit As Long, ByVal csymbol As string, _
ByVal country As Long) As Long
VB.net:
Declare Function B_Select_Symbol(ByVal num_bit As Integer, ByVal symbol As Integer, _
ByVal country As Integer) As Integer
Declare Function B_Select_Symbol2(ByVal num_bit As Integer, ByVal csymbol As string, _
ByVal country As Integer) As Integer
參數:
num_bit;
資料位元數量。8 是 8-bit data 和 7 是 7-bit data。
symbol;
符號設定。見下表:備註:工廠內定符號設定是 Code page 437(English)。
+---------------------------+---------------------------+
| 8 bit data | 7 bit data |
+------+--------------------+------+--------------------+
|symbol| Code page |symbol| Code page |
+------+--------------------+------+--------------------+
| 0 |English(437) | 0 |USASCII |
+------+--------------------+------+--------------------+
| 1 |Latin(850) | 1 |British |
+------+--------------------+------+--------------------+
| 2 |Slavic(852) | 2 |German |
+------+--------------------+------+--------------------+
| 3 |Portugal(860) | 3 |French |
+------+--------------------+------+--------------------+
| 4 |Canadian?French(863)| 4 |Danish |
+------+--------------------+------+--------------------+
| 5 |Nordic(865) | 5 |Italian |
+------+--------------------+------+--------------------+
| | | 6 |Spanish |
+------+--------------------+------+--------------------+
| | | 7 |Swedish |
+------+--------------------+------+--------------------+
| | | 8 |Swiss |
+------+--------------------+------+--------------------+
csymbol;
符號設定。見下表:備註:工廠內定符號設定是 Code page 437(English)。
+---------------------------+---------------------------+
| 8 bit data | 7 bit data |
+------+--------------------+------+--------------------+
|symbol| Code page |symbol| Code page |
+------+--------------------+------+--------------------+
| 0 |English(437) | 0 |USASCII |
+------+--------------------+------+--------------------+
| 1 |Latin(850) | 1 |British |
+------+--------------------+------+--------------------+
| 2 |Slavic(852) | 2 |German |
+------+--------------------+------+--------------------+
| 3 |Portugal(860) | 3 |French |
+------+--------------------+------+--------------------+
| 4 |Canadian/French(863)| 4 |Danish |
+------+--------------------+------+--------------------+
| 5 |Nordic(865) | 5 |Italian |
+------+--------------------+------+--------------------+
| 6 |Turkish(857) | 6 |Spanish |
+------+--------------------+------+--------------------+
| 7 |Icelandic(861) | 7 |Swedish |
+------+--------------------+------+--------------------+
| 8 |Hebrew(862) | 8 |Swiss |
+------+--------------------+------+--------------------+
| 9 |Cyrillic(855) | | |
+------+--------------------+------+--------------------+
| 10 |Cyrillic CIS(866) | | |
+------+--------------------+------+--------------------+
| 11 |Greek(737) | | |
+------+--------------------+------+--------------------+
| 12 |Greek(851) | | |
+------+--------------------+------+--------------------+
| 13 |Greek(869) | | |
+------+--------------------+------+--------------------+
| A |Latin(1252) | | |
+------+--------------------+------+--------------------+
| B |Latin(1250) | | |
+------+--------------------+------+--------------------+
| C |Cyrillic(1251) | | |
+------+--------------------+------+--------------------+
| D |Greek(1253) | | |
+------+--------------------+------+--------------------+
| E |Turkish(1254) | | |
+------+--------------------+------+--------------------+
| F |Hebrew(1255) | | |
+------+--------------------+------+--------------------+
country;
KDU country code.
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_Select_Symbol(7, 5, 1);
or
B_Select_Symbol2(7, "5", 1);
VB: VBA: VB.net:
Call B_Select_Symbol(7, 5, 1)
or
Call B_Select_Symbol2(7, "5", 1)
說明: 這個 B_Select_Symbol 函數可以選擇適當符號設定。
*******************************************************************************
B_Set_Backfeed()
===============================================================================
功能: 啟動 Back feed。
語法:
VC:
int B_Set_Backfeed(char option);
VB: VBA:
Declare Function B_Set_Backfeed(ByVal options As Byte) As Long
VB.net:
Declare Function B_Set_Backfeed(ByVal options As Byte) As Integer
參數:
option;
功能選項,"B" 關閉 Back feed。"F" 啟動 Back feed。
它可吐出一定長度,讓使用者看到印出結果。
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_Set_Backfeed('B');
VB: VBA: VB.net:
Call B_Set_Backfeed(Asc("B"))
說明: 這個 B_Set_Backfeed 函數可以調整停止點。
******************************************************************************
B_Set_Backfeed_Offset()
==============================================================================
功能: 設定 Back Feed 偏移量(只用於撕紙模式).
語法:
VC:
int B_Set_Backfeed_Offset(int offset);
VB: VBA:
Declare Function B_Set_Backfeed_Offset(ByVal offset As Long) As Long
VB.net:
Declare Function B_Set_Backfeed_Offset(ByVal offset As Integer) As Integer
參數:
offset;
back feed 偏移量,範圍:-127~127 pixels.
傳回值:
0 -> OK.
Reference BW-Error.txt file.
範例:
VC:
B_Set_Backfeed('F');
B_Select_