立象(ARGOX) 条码标签打印机通用库 PLLB(BWIN-SCAPI)

******************************************************************************/
  目录
===============================================================================
(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_Bar2d_QR()                  => 打印 QR 條碼。
(05)B_ClosePrn()                  => 关闭打印端口。
(06)B_CreatePrn()                 => 开启 Printer 工作。 
(07)B_CreateUSBPort()             => 开启USB打印端口。
(08)B_CreatePort()                => 开启端口進行传输。
(09)B_CreateNetPort()             => 使用 网路进行传输。
(10)B_Del_Form()                  => 删除 Form (表格)。
(11)B_Del_Pcx()                   => 刪除 Pcx 图档。
(12)B_Draw_Box()                  => 画一个框。
(13)B_Draw_Line()                 => 画一条线。
(14)B_EnumUSB()                   => 枚举USB端口设备。
(15)B_EnumNetPrinter()            => 枚举 Net Printer设备。
(16)B_Error_Reporting()           => 开启或关闭错误回传功能。
(17)B_Execute_Form()              => 打印一個已存在打印机內的 FORM (表格),并输入 FORM 所有变数、计数资料。
(18)B_Get_DLL_Version()           => 取得动态庫版本讯息。
(19)B_Get_Graphic_ColorBMP()      => 转换 BMP 彩色图档变灰阶,并将图形存在打印机的 RAM 中。
(20)B_Get_Graphic_ColorBMPEx()    => 转换 BMP 彩色图档变灰阶,并将图形存在打印机的 RAM 中,此指令可设置图片宽与高。
(21)B_Get_Pcx()                   => 打印一个图形并将图形存在打印机的记忆体中。
(22)B_GetPrinterStatus()          => 查询打印机当前状态。
(23)B_Initial_Setting()           => 前置处理。
(24)B_Load_Pcx()                  => 打印一个图形。
(25)B_Open_ChineseFont()          => 开启并使用中文字型档案 (16*15 和 24*24)。
(26)B_Print_Form()                => 打印一个 FORM (表格),并输入 FORM 所有变数、计数资料。
(27)B_Print_MCopy()               => 打印所有资料和加上跳号复制功能。
(28)B_Print_Out()                 => 送出打印内容。
(29)B_Prn_Barcode()               => 打印一维条形码。
(30)B_Prn_Configuration()         => 打印出打印机配置讯息。
(31)B_Prn_Text()                  => 印出一行文字和加上跳號功能。
(32)B_Prn_Text_Chinese()          => 打印出一行文字,使用中文字型档案 (16*15 或 24*24)。
(33)B_Prn_Text_TrueType()         => 打印Windows仿真字。
(34)B_Prn_Text_TrueType_W()       => 打印出一行Windows仿真字,並控制字型的宽及高。
(35)B_ResetPrinter()              => 使打印机重开机。
(36)B_Select_Option()             => 设置转印模式、启动 Cutter 或 Peel。
(37)B_Select_Option2()            => 设置转印模式、启动 Cutter 或 Peel。
(38)B_Select_Symbol()             => 符号设定选择。
(39)B_Select_Symbol2()            => 符号设定选择。
(40)B_Set_Backfeed()              => 启动 Back feed。
(41)B_Set_BMPSave()               => 储存影像图档。
(42)B_Set_Darkness()              => 设置打印浓度。
(43)B_Set_DebugDialog()           => 设置除错环境。
(44)B_Set_Direction()             => 设置打印方向。
(45)B_Set_Form()                  => 储存并打印 FORM (表格)。
(46)B_Set_Labgap()                => 同时设置标签长度及 GAP 长度。
(47)B_Set_Labwidth()              => 设置标签宽度。
(48)B_Set_Originpoint()           => 设置打印初始位置。
(49)B_Set_Prncomport()            => 设置 Serial Port。
(50)B_Set_Prncomport_PC()         => 设置 PC 序列埠。
(51)B_Set_Speed()                 => 设置打印速度。
(52)B_Set_ProcessDlg()            => 开启或关闭进度对话框。

*******************************************************************************
B_GetPrinterStatus()
===============================================================================
功能: 获取打印机当前状态返回值。

语法:
  int B_getPrinterStatus();

参数:
    无

返回值:
    0:等待列印
    1:打印命令错误!
    2:USB端口开启失败
    3:条码格式错误
    4:内存溢出
    6:串口通信异常
    7:纸张/碳带用完
    12:打印机暂停 
    50:打印机忙碌 

说明: 
    连接打印机USB端口。
    通常用在标签打印前/后判断设备的当前状态。

*******************************************************************************
B_EnumUSB()
===============================================================================
功能: 枚举搜索所有打印机USB端口设备。

语法:
  string B_EnumUSB();

参数:
    无

返回值:
    空字符串:未搜索到可用的USB打印机端口
    其他:成功

********************************************************************************
B_EnumNetPrinter()
===============================================================================
功能: 取得 Net Printer 的装置名称及资料长度。

语法:
    string B_EnumNetPrinter();
 
参数:
    无
    
传回值:
    空字符串:未搜索到可用的USB打印机端口
    其他:成功

*******************************************************************************
B_CreateUSBPort()
================================================================================
功能: 开启USB打印机端口。
       
语法:
   int B_CreateUSBPort(int nPort)

参数:
    nPort:USB 传输埠, nPort由1开始.

返回值:
    0 :成功

说明:用以开启USB打印机端口,开启成功后才可以打印标签内容。而这个函数必須在
    B_EnumUSB()搜索到可用的USB打印机端口后,才能执行。

*******************************************************************************
B_CreatePort()
===============================================================================
功能: 开启 Printer 工作。

语法:
    int B_CreatePort(int nPortType, int nPort, string filename);
 
参数:
    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.

说明:  B_CreatePort() 函数会开启你选择的输出埠或开启你键入的输出档。
    而这个函数必须在所有函数之前执行。
    B_CreatePrn(), B_CreateUSBPort(), B_CreateNetPort() 和 B_CreatePort() 不能同时使用。

*******************************************************************************
B_CreateNetPort()
================================================================================
功能: 开启 NetPrinter 工作。


语法:
    int B_CreateNetPort(int nPort);

参数:
    nPort;
      USB 传输埠 ; LAN 传输埠, nPort由1开始.

传回值:
    0 -> OK.
    Reference BW-Error.txt file.

说明: B_CreateUSBPort() 和 B_CreateNetPort()函数会开启你选择的输出埠或
    开启你键入的输出档。而这个函数必须在所有函数之前执行。
    B_CreatePrn(), B_CreateUSBPort() , B_CreateNetPort() 和 B_CreatePort() 不能同时使用。

*******************************************************************************
B_CreatePrn()
================================================================================
功能: 开启 Printer 工作。

语法:
    int B_CreatePrn(int selection, string filename);

參数:
    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.

说明: B_CreatePrn() 函数會开启你选择的输出端口或开启你键入的输出档案。
    而这个函数必須在所有函数之前执行。
    B_CreatePrn(), B_CreateUSBPort() , B_CreateNetPort() 和 B_CreatePort() 不能同时使用。

*******************************************************************************
B_ClosePrn()
===============================================================================
功能:  关闭 USB打印机端口。

语法:
   void B_ClosePrn();
  
说明:  B_ClosePrn 函数会关闭开启的打印机端口,必須在所有打印函数之后執行。

*******************************************************************************
B_Del_Form()
===============================================================================
功能:  删除 Form (表格)。

语法:
    int B_Del_Form(string formname);
 
参数:
    formname;
      表格名称,最多 9 个字。
      当 formname 內容是 '*'时将会清除打印机內所有表格。

传回值:
    0 -> OK.
    Reference BW-Error.txt file.

说明:  这个 B_Del_Form 函数會刪除打印机內,你输入的 Form (表格)名称。当
    你刪除它后,将不能再还原,但可以重新载入。

*******************************************************************************
B_Del_Pcx()
===============================================================================
功能:  刪除储存於RAM或Flash中的图形。

语法:
    int B_Del_Pcx(string pcxname);

參数:
    pcxname;
      图形名称,最多 9 个字。
      当 pcxname 內容是 '*'時将会清除打印机內 RAM 或 flash memory 所有图形。

传回值:
    0 -> OK.
    Reference BW-Error.txt file.

說明:  这个 B_Del_Pcx 函数會刪除打印机內,你输入的图形名称。当你刪除它后,
    將不能再还原,但可以重新載入。

*******************************************************************************
B_Draw_Line()
===============================================================================
功能:  画一条线

语法:

int B_Draw_Line(string mode, int x, int y, int hor_dots, int ver_dots);

参数:
    mode;
      选择线条种类,如下表:
      +------+----------------------------+
      | mode | 線條種類.                  |
      +------+----------------------------+
      |   E  | Exclusive OR               |
      +------+----------------------------+
      |   O  | OR                         |
      +------+----------------------------+
      |   W  | 白線,它會蓋掉先前影像     |
      +------+----------------------------+
    x;
      起点 X 坐标。
    y;
      起點 Y 坐标。(1 dot = 0.125 mm)
    width;
      水平长度。
    height;
      垂直长度。

返回值:
    0 -> OK.

说明:  这个 Draw_Line 函数会画一个属性是"OR"或"XOR"的线条及一条白线。

*******************************************************************************
B_Draw_Box()
===============================================================================
功能:  画一個框。

语法:
 
int B_Draw_Box(int x, int y, int thickness, int hor_dots, int ver_dots);


参数:
    x;
      起点 X 坐标。
    y;
      起点 Y 坐标。(1 dot = 0.125 mm)
    thickness;
      指定框四边边线厚度。
    hor_dots; 
      对角点 X 坐标。
    ver_dots;
      对焦点 Y 坐标。

返回值:
    0 -> OK.
   
说明:  这个個B_Draw_Box 函数会画一个属性是 "OR" 的框。

*******************************************************************************
B_Error_Reporting()
===============================================================================
功能:  开启或关闭错误回传功能。

语法:
    int B_Error_Reporting(string option);

参数:
    option;
      当 option 是'N'时 关闭状态回馈。
      'S' 是开启状态回馈。

传回值:
    0 -> OK.
    Reference BW-Error.txt file.

范例:
    B_Error_Reporting('S');

说明:  这个 B_Error_Reporting 函数会使打印机状态回馈 Disable/Enable,这回
    馈通道是透过 RS232 Port。预定值是 Disable。

*******************************************************************************
B_Eexcute_Form()
===============================================================================
功能:  列印一个已存在放打印机内的 FORM (表格),并输入 FORM 所有变数、计数资料。

语法:
    int B_Execute_Form(string form_out, string var);

参数:
    form_out;
      表格名称,同于之前载入的 FORM 名称,或原先储存在打印机内的 FORM。
    var;
      输入 FORM 所有变数、计数资料,用 ","依序分别区隔开。如果变数裡有","号,
      可用";,"来代表逗号。

传回值:
    0 --> OK.
    Reference BW-Error.txt file.

范例:
    B_Execute_Form("demo", "2000,Bicycle");


*******************************************************************************
B_Get_DLL_Version()
===============================================================================
功能:  取得或秀出此动态库版本资讯。

语法:
    int B_Get_DLL_Version(int nShowMessage);
    
参数:
    nShowMessage;
      0 -> 讯息视窗不显现。
      1 -> 讯息视窗显现。

传回值:
    B_Get_DLL_VersionA();  return version value.
                           主版号 = (return version value) / 100.
                           子版号 = (return version value) % 100.

范例:
    int nVersion, nMainVersion, nSubVersion;
    nVersion = B_Get_DLL_Version(1);
    nMainVersion = nVersion / 100;
    nSubVersion = nVersion % 100;

说明:  无
    
*******************************************************************************
B_Get_Graphic_ColorBMP()
B_Get_Graphic_ColorBMPEx()
===============================================================================
功能:  将 BMP 图档转换成灰阶模式,并将图形储存在打印机内的 RAM。

语法:
  VC:
    int B_Get_Graphic_ColorBMP(int x, int y, string filename);
    int B_Get_Graphic_ColorBMPEx(int x, int y, int nWidth, int nHeight,
      int rotate, string id_name, string filename);

参数:
    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
    
传回值:
    0 -> OK.
    Reference BW-Error.txt file.

范例:
    B_Get_Graphic_ColorBMP(30, 20, "bb.bmp");
    B_Get_Graphic_ColorBMPEx(30, 20, 200, 150, 2, "bb1", "bb.bmp");//180 angle.    

说明:  这个 B_Get_Graphic_ColorBMP() 函数可输入任何位元数的 BMP 图档,并自动转换
    为黑白灰阶图档送至打印机打印。
    B_Get_Graphic_ColorBMPEx() 函式可做放大,缩小及旋转的功能,可利用档名当
    资料来源。

*******************************************************************************
B_Get_Pcx()
===============================================================================
功能:  列印一个图形并将图形储存在打印机内的 Memory。

语法:
    int B_Get_Pcx(int x, int y, string filename);

参数:
    x;
      X 座标。
    y;
      Y 座标。(1 dot = 0.125 mm)
    filename;
      图形档名称,可含路径。
      格式如:XXXXXXXX.XXX 或 X:\\XXX\\XXX.XXX

传回值:
    0 -> OK.
    Reference BW-Error.txt file.

范例:
    B_Get_Pcx(10,100,"phone.pcx");

说明:  这个 B_Get_Pcx 函数会列印一个图形并将图形储存在打印机内的 RAM 或
    flash memory。图形档必须是 PCX 的格式。

*******************************************************************************
B_Initial_Setting()
===============================================================================
功能:  前置处理。

语法:
    int B_Initial_Setting(int Type, string Source);

参数:
    Type;
      选择输入模式。
      0 -> 输入字串,1 -> 输入档案。
    Source;
      资料来源,可为字串或档案名称,可含路径。

传回值:
    0 -> OK.
    Reference BW-Error.txt file.

范例:
    string aa = "ZT\r\n";
    B_Initial_Setting(0, aa);
      or
    B_Initial_Setting(1, "initfile.txt");

说明:  这个 B_Initial_Setting 函数前置处理的动作,是将一串 Command 先送至印表
    机,由字串或档案输入,在使用这个函数时,须先在 B_Create_Prn() 之后其他
    函数之前,可作为使用者自订型态。

*******************************************************************************
B_Load_Pcx()
===============================================================================
功能:  列印一个图形。

语法:
    int B_Load_Pcx(int x, int y, string pcxname);

参数:
    x;
      X 座标。
    y;
      Y 座标。备注:1 dot = 0.125 mm。
    pcxname;
      图形档名称。

传回值:
    0 -> OK.
    Reference BW-Error.txt file.

范例:
    B_Load_Pcx(50, 30, "phone");

说明:  这个 B_Load_Pcx 函数会列印一个 PCX 格式图形,而图形必须事先载入打印
    机内的 RAM 或 flash memory 储存。

*******************************************************************************
B_Open_ChineseFont()
===============================================================================
功能:  开启使用中文字型档案 (16*15 和 24*24)。

语法:
    int B_Open_ChineseFont(char* path);

参数:
    path;
      中文字型档案来源路径。

传回值:
    0 -> OK.
    Reference BW-Error.txt file.

范例:
    B_Open_ChineseFont("C:\\ET3");
 
说明:  这个 B_Open_ChineseFont 函数开启中文点矩阵字型档案 (16*15 和 24*24),
    供 B_Prn_Text_Chinese 函数使用。

*******************************************************************************
B_Print_Form()
===============================================================================
功能:  打印一个 FORM (表格),并输入 FORM 所有变量、计数资料。

语法:
    int B_Print_Form(int labset, int copies, string form_out, string var);

参数:
    labset;
      列印的份数,范围:1~32767。
    copies;
      複製的份数,范围:1~32767。
    form_out;
      表格名称,同于之前载入的 FORM 名称,或原先储存在打印机内的 FORM。
    var;
      输入 FORM 所有变数、计数资料,用 ","依序分别区隔开。如果变数裡有","号,
      可用";,"来代表逗号。

传回值:
    0 -> OK.
    Reference BW-Error.txt file.

范例:
    B_Print_form(3, 2, "demo", "2000,Bicycle");

说明:  这个 B_Print_Form 函数会送所有资料及表格到 Printer,这个函数使用前
    须先执行 B_Set_Form(),并在所有函数之后,B_ClosePrn() 之前执行。当使
    用此函数时,就不须执行 B_Print_Out()。

*******************************************************************************
B_Print_MCopy()
===============================================================================
功能:  打印所有资料和加上跳号複製功能。

语法:
    int B_Print_MCopy(int labset, int copies);
 
参数:
    labset;
      列印的份数,1 ~ 32767。
    copies;
      複製的份数,1 ~ 32767。
      当为 1 时同等于Print_Out()功能。

传回值:
    0-> OK.
    Reference BW-Error.txt file.

范例:
    B_Print_MCopy(2, 2);

说明:  这个 B_Print_MCopy 函数会送所有资料到 Printer,这个函数须在所有函数之后,
    B_ClosePrn() 之前执行,当使用此函数时,就不须执行 B_Print_Out()。
    它包含 B_Print_Out() 所有功能。

*******************************************************************************
B_Print_Out()
===============================================================================
功能:  打印所有資料。

语法:
 int B_Print_Out(int labset);

参数:
    labset;
      列印复制的份数

返回值:
    0 -> OK.
    
说明:  这个 B_Print_Out 函数会送所有资料到 Printer,这个函数须在所有函数之后,
    B_ClosePrn() 之前执行。


*******************************************************************************
B_Prn_Barcode()
===============================================================================
功能:  印出一个条码和加上跳号功能。

语法:
   int B_Prn_Barcode(int x, int y, int ori, string type, int narrow,
            int width, int height, string humn, string data);

参数:
    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.
    
说明:  这个 B_Prn_Barcode 函数可以列印出一个指定类型的条码 功能。

*******************************************************************************
B_Prn_Configuration()
===============================================================================
功能:  列印打印机内部配置。

语法:
    void B_Prn_Configuration();

范例:
    B_Prn_Configuration();

说明:  这个 B_Prn_Configuration 函数会打印打印机内部配置,包含设定、
    firmware 版本、accessories、等....。

*******************************************************************************
B_Prn_Text()
===============================================================================
功能:  印出一行文字和加上跳号功能。

语法:
    int B_Prn_Text(int x, int y, int ori, int font, int hor_factor, int ver_factor,
      string mode, string data);

参数:
    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.

范例:
    B_Prn_Text(50, 110, 0, 4, 1, 1, 'N', "A123456"); //无跳号功能
      or
    B_Prn_Text(50, 110, 0, 4, 1, 1, 'N', "A123456<-1>"); //有跳号功能

说明:  这个 B_Prn_Text 函数可以列印出一行文字和加上跳号功能。

*******************************************************************************
B_Prn_Text_Chinese()
===============================================================================
功能:  印出一行文字,使用中文点矩阵字型档案 (16*15 或 24*24)。

语法:
    int B_Prn_Text_Chinese(int x, int y, int fonttype, string id_name, string data);

参数:
    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.


说明:  这个 B_Prn_Text_Chinese 函数可以印出一行文字,使用中文点矩阵字型档案
    (16*15 或 24*24)。

*******************************************************************************
B_Prn_Text_TrueType_W()
===============================================================================
功能:  印出一行 True Type Font 文字。

语法:
    int B_Prn_Text_TrueType_W(int x, int y, int FHeight, int FWidth, string FType,
      int Fspin, int FWeight, int FItalic, int FUnline, int FStrikeOut, string id_name,
      string data);

参数:
    x;
      X 座标, 单位: 像素。
    y;
      Y 座标, 单位: 像素。
    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结尾。

传回值:
    0 -> OK.
    Reference BW-Error.txt file.


说明:  这个 B_Prn_Text_TrueType() 函数可以印出一行 True Type Font 文字。

*******************************************************************************
B_Select_Option()
B_Select_Option2()
===============================================================================
功能:  设定转印模式、启动 Cutter 或 Peel。

语法:
    int B_Select_Option(int object);
    int B_Select_Option2(int object, int p);

参数:
    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.

范例:
    B_Select_Option(1);
    B_Select_Option2(3, 2);

说明:  B_Select_Option, B_Select_Option2函数可以选择不同 Printer 选项,使印
    表机依据这些选项工作。

*******************************************************************************
B_Select_Symbol()
B_Select_Symbol2()
===============================================================================
功能:  符号设定选择。

语法:
    int B_Select_Symbol(int num_bit, int symbol, int country);
    int B_Select_Symbol2(int num_bit, string csymbol, int country);

参数:
    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.

范例:
    B_Select_Symbol(7, 5, 1);
      or
    B_Select_Symbol2(7, "5", 1);

说明:  这个 B_Select_Symbol 函数可以选择适当符号设定。

*******************************************************************************
B_Set_Backfeed()
===============================================================================
功能:  启动 Back feed。

语法:
    int B_Set_Backfeed(string option);
 
参数:
    option;
      功能选项,"B" 关闭 Back feed。"F" 启动 Back feed。
      它可吐出一定长度,让使用者看到印出结果。

传回值:
    0 -> OK.
    Reference BW-Error.txt file.

范例:
    B_Set_Backfeed('B');

说明:  这个 B_Set_Backfeed 函数可以调整停止点。

*******************************************************************************
B_Set_BMPSave()
===============================================================================
功能:  储存影像图档。

语法:
    int B_Set_BMPSave(int nSave, string pstrBMPFName);

参数:
    nSave;
      1 -> 储存图档
      0 -> 不储存图档
    pstrBMPFName; 
      储存图档的名称

传回值:
    0 -> OK.
    Reference BW-Error.txt file.

范例:
    B_Set_BMPSave(1, "C:\\TempBMP.bmp");

说明:  这个 B_Set_BMPSave 函数,可以决定是否储存影像图档。

*******************************************************************************
B_Set_Darkness()
===============================================================================
功能:  设定热感头列印热度。

语法:
 int B_Set_Darkness(int darkness);

参数:
    darkness;
      设定打印头打印热度,范围:0~15,內定是 8。
返回值:
    0 -> OK.

说明:  這個 B_Set_Darkness 函数控制影像浓淡,想得到更好的印出品质,你应该
    考虑一些因素,印出图案样式、速度、耗材种类等。

*******************************************************************************
B_Set_DebugDialog()
===============================================================================
功能:  设定除错环境。

语法:
    int B_Set_DebugDialog(int nEnable);

参数:
    nEnable;
      1 -> 除错环境致能
      0 -> 除错环境关闭

传回值:
    0 -> OK.
    Reference BW-Error.txt file.

说明:  这个 B_Set_DebugDialog 函数,设定除错环境,除了会回传错误码,也会秀
    出警示讯息对话框。

*******************************************************************************
B_Set_Direction()
===============================================================================
功能:  设定列印方向。

语法:
    int B_Set_Direction(string direction);

参数:
    direction;
      设定列印方向,范围:B 和 T。它们是对角对称。内定是 T。

传回值:
    0 -> OK.
    Reference BW-Error.txt file.

范例:
    B_Set_Direction('T');

说明:  这个 B_Set_Direction 函数设定列印方向,对整个版面内所有图形文字。

*******************************************************************************
B_Set_Form()
===============================================================================
功能:  储存并列印 FORM (表格)。

语法:
    int B_Set_Form(string formfile);

参数:
    formfile;
      表格档案名称,可含路径。

传回值:
    0 -> OK.
    Reference BW-Error.txt file.

范例:
    B_Set_Form("demo.prn");

说明:  这个 B_Set_Form 函数储存并列印 FORM (表格)。在使用这个函数时,须先
    在 B_Print_Form函数之前。使用此函数时,就必须执行 B_Print_Form()。

*******************************************************************************
B_Set_Labgap()
===============================================================================
功能:  同时设定标籤长度及 GAP 长度。

语法:
    int B_Set_Labgap(int lablength, int gaplength);

参数:
    lablength;
      在最后影像线段的标籤长度。单位 dot。
    gaplength;
      GAP 长度。当是连续纸时,必须设为 0。

传回值:
    0 -> OK.
    Reference BW-Error.txt file.

说明:  这个 B_Set_Labgap 函数设定标籤长度及 GAP 长度。

*******************************************************************************
B_Set_Labwidth()
===============================================================================
功能:  设定标籤宽度。

语法:
    int B_Set_Labwidth(int labwidth);

参数:
    labwidth;
      标籤宽度。单位 dot。

传回值:
    0 -> OK.
    Reference BW-Error.txt file.

说明:  这个 B_Set_Labwidth 函数设定标籤宽度。当使用此函数,就不能使用
    B_Set_Originpoint 函数。

*******************************************************************************
B_Set_Originpoint()
===============================================================================
功能:  设定开始列印点。

语法:
    int B_Set_Originpoint(int hor, int ver);

参数:
    hor;
      水平边界基点。单位 dot。
    ver;
      垂直边界基点。单位 dot。

传回值:
    0 -> OK.
    Reference BW-Error.txt file.

范例:
    B_Set_Originpoint(0, 0);

说明:  这个 B_Set_Originpoint 函数使用重新设定起源点 X、Y 轴。

*******************************************************************************
B_Set_Prncomport()
===============================================================================
功能:  设定 Serial Port。

语法:
    int B_Set_Prncomport(int baud, string parity, int data, int stop);

参数:
    baud;
      鲍尔率,如下表:
      38 -> 38400
      19 -> 19200
      96 -> 9600
      48 -> 4800
      24 -> 2400
      57 -> 57600
      11 -> 115200
    parity;
      Parity。'O'是 odd,'E'是 even parity, 'N'是 none parity。
    data;
      Data bit number,7 或 8。
    stop;
      Stop bit number,1 或 2。

传回值:
    0 -> OK.
    Reference BW-Error.txt file.

范例:
  VC:
    B_Set_Prncomport(96, 'N', 8, 1);

说明:  这个 B_Set_Prncomport 函数会设定打印机序列埠设定值,来改变打印机相同于
    PC 序列埠设定值,如果不同则无法与 PC 连接。此函数必须在函数 Print_Out
    之前执行,必须单独执行。

*******************************************************************************
B_Set_Prncomport_PC()
===============================================================================
功能:  设定 PC 端口。

语法:
    int B_Set_Prncomport_PC(int nBaudRate, int nByteSize, int nParity, int nStopBits,
      int nDsr, int nCts, int nXonXoff);

参数:
    nBaudRate;
      鲍尔率,如下表:
      1 -> 110     9 -> 19200
      2 -> 300    10 -> 38400
      3 -> 600    11 -> 56000
      4 -> 1200   12 -> 57600
      5 -> 2400   13 -> 115200
      6 -> 4800   14 -> 128000
      7 -> 9600   15 -> 256000
      8 -> 14400   0 -> 9600
    nByteSize;
      Data bit number:
      0 -> 7-bit data
      7 -> 7-bit data
      8 -> 8-bit data
    nParity;
      Parity,如下表:
      0 -> none parity
      1 -> even parity
      2 -> odd  parity
    nStopBits;
      Stop bit number:
      0 -> 1 stop bit
      1 -> 1 stop bit
      2 -> 2 stop bits
    nDsr;
      Setup hardware flow control
      1 -> DTR CONTROL HANDSHAKE;
      0 -> DTR CONTROL ENABLE;
    nCts;
      Setup hardware flow control
      1 -> RTS CONTROL HANDSHAKE;
      0 -> RTS CONTROL ENABLE;
    nXonXoff;
      Setup software flow control
      0 -> Enable;
      1 -> Disable;

传回值:
    0 -> OK.
    Reference BW-Error.txt file.

范例:
    B_Set_Prncomport_PC(0, 0, 0, 0, 0, 0, 0);

说明:  这个 B_Set_Prncomport_PC 函数会设定 PC 序列埠设定值,来改变 PC 相同于打印机序列埠
    设定值,如果不同则无法与打印机连接。此函数必须在函数 B_Print_Out 之前执行。

*******************************************************************************
B_Set_Speed()
===============================================================================
功能: 设定列印速度

语法:
 int B_Set_Speed(int speed);

参数:
    speed;
      列印速度,范围:0~7。
      +-------------+------------------+
      | speed Value | SPEED            |
      +-------------+------------------+
      | 0 or 1      | 1 ips (25 mmps)  |
      +-------------+------------------+
      |   2         | 2 ips (50 mmps)  |
      +-------------+------------------+
      |   3         | 3 ips (75 mmps)  |
      +-------------+------------------+
      |   4         | 4 ips (100 mmps) |
      +-------------+------------------+
      |   5         | 5 ips (125 mmps) |
      +-------------+------------------+
      |   6         | 6 ips (150 mmps) |
      +-------------+------------------+
      |   7         | 7 ips (175 mmps) |
      +-------------+------------------+

返回值:
    0 -> OK.    

说明:  这个 B_Set_Speed 函数设定列印速度,GT-2140最高速度可达4ips。

*******************************************************************************
B_Set_ProcessDlg()
===============================================================================
功能:  开启或关闭进度对话框。

语法:
    int B_Set_ProcessDlg(int nShow);

参数:
    nShow;
      0 -> 关闭。
      1 -> 开启。

传回值:
    0 -> OK.
    Reference BW-Error.txt file.

说明:  这个 B_Set_ProcessDlg 函数可开关进度对话框。

*******************************************************************************
B_ResetPrinter()
==============================================================================
功能:  此函数会使打印机重新开机。

语法:
    int B_ResetPrinter();
 
传回值:
    0 -> OK.
    Reference BW-Error.txt file.

范例:
    B_ResetPrinter();

*******************************************************************************
B_Prn_Text_TrueType()
===============================================================================
功能:  印出一行 True Type Font 文字。

語法:
  int B_Prn_Text_TrueType(int x, int y, int FSize, string FType,
            int Fspin, int FWeight, int FItalic, int FUnline, int FStrikeOut, string id_name,
            string data);
参数:
    x;
      X 座标, 单位: 像素。
    y;
      Y 座标, 单位: 像素。
    FSize;
      TrueType font size,单位為点(dot)。   
    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;
      文字內容。
    
传回值:
    0 -> OK.
    
說明:  這個 B_Prn_Text_TrueType() 函數可以印出一行 True Type Font 文字。

*******************************************************************************
B_Bar2d_QR()
===============================================================================
功能:  列印 QR 条码。

语法:    
       int B_Bar2d_QR(int x, int y, int model, int scl, char error,char dinput,
            int c, int d, int p, string data);

参数:
    x;
      X 坐标。
    y;
      Y 坐标。
    model;
      QR条码模式,范围:1,2 (若不符范围则打印机会采用预设值: 2)。
    scl;
      条码尺寸,范围: 1~99 (若不符范围则打印机会采用预设值: 3)。
    error;
      错误校正等級。
      L = Lower error correction, most data
      M = Default
      Q = Optimized for error correction over data
      H = Highest error correction, latest data
      (若不符范围则打印机会采用預設值: M)
    dinput;
      資料輸入模式。
      A = 自動模式 
      M = 手動模式
      (若不符範圍則印表機會採用預設值: A)
    c,d,p;
      附加符号。(若变数范围不符则会取消此項功能)
      +-------------+-----+------+
      |    項目     |变数 | 范围 |
      +-------------+-----+------+
      |Symbol Number|  c  | 1~16 |
      +-------------+-----+------+
      |  Divisions  |  d  | 1~16 |
      +-------------+-----+------+
      |   Parity    |  p  | 0~255|
      +-------------+-----+------+                     
    data;
      资料字串。

返回值:
    0 -> OK.
   
说明:  B_Bar2d_QR 函數可以列印 QR 条码,支持中文字及日文字。

*******************************************************************************
B_Bar2d_Maxi()
===============================================================================
功能:  印出一个 Maxi Code 2D Barcode。

语法:
    int B_Bar2d_Maxi(int x, int y, int cl, int cc, int pc, string data);

參数:
    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.

范例:
    ObjectId.B_Bar2d_Maxi(50, 50, 300, 400, 93065, "This MaxiCode");


說明:  這个 B_Bar2d_Maxi 函数可以打印出一个 Maxi Code 2D Barcode。

*******************************************************************************
B_Bar2d_PDF417()
===============================================================================
功能:  打印出一个 PDF-417 2D Barcode。

语法:
    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, string data);

參数:
    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.

范例:
    ObjectId.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_PDF417_N()
===============================================================================
功能:  打印出一个 PDF-417 2D Barcode。

语法:
    int B_Bar2d_PDF417_N(int x, int y, int w, int h, string para, string data);
  
参数:
    x;
      X 座标。
    y;
      Y 座标。
    w;
      最大打印宽度,单位 dots。
    h;
      最大打印高度,单位 dots。
    para;
      其他可包含之变量,此变量可以是NULL。
      错误校正等级(s),范围:0~8。
      资料压缩等級(c),范围:0 或 1。
      print human readable(pxxx,yyy,mm)
      xxx:Human readable horizontal start location, 0 ~ 999.
      yyy: Human readable vertical start location, 0 ~ 999.
      mm:Maximum characters per line, 0 ~ 99.
      f:Bar code origin point, 0 or 1.
      模組宽度(x),范围:2~9 dots。
      模組高度(y),范围:4~99 dots。
      最大 row count(r)。
      最大 column count(l)。
      Truncation flag(t),'0' 是 normal 和 '1' 是 truncated.
    data;
      资料字串。

传回值:
    0 -> OK.
    Reference BW-Error.txt file.

范例:
    ObjectId.B_Bar2d_PDF417_N(10,10,400,300,"s0,c0,p400,400,10,f0,x3,y7,r10,l2,f0","ARGOXINFO");

说明:  這个 B_Bar2d_PDF417 函数可以打印出一個 PDF-417 2D Barcode。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
打印机语言:PPLB 插件安装包: ArgoxWebPrintSetup.msi API名称:ArgoxWebPrint 操作系统:WindowsXP, Windows7 32/64bit 运行环境:IE6以上 程序测试页面:PrintDemoPage.htm 发行日期:2014-04-17 ******************************************************************************* 注意事项 =============================================================================== 1. 连接打印机开始运行PrintDemoPage.htm打印测试前,请先确认 - ArgoxWebPrintSetup.msi是否已安装完成。 - 打印机驱动是否已安装完成。 2. 请使用IE浏览器开启PrintDemoPage.htm页面,并在下方提示点击允许IE运行此ActiveXP程序。 3. 插件安装软件包名称为:Setup_ArgoX.msi,必须安装在客户端电脑。 4. 打印机接口函数用法请参阅下方说明,JS的调用方式请参考PrintDemoPage.htm脚本。 5. 你应该将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\Syswow64目录. 6. 以下范例为 C# 的范例,其他程式语言不一定完全相同。
C#中监控立象打印机的状态,可以通过调用WIN32 api实现。首先,需要使用System.Runtime.InteropServices命名空间来导入winspool.drv。可以使用OpenPrinter函数来打开打印机,并使用ClosePrinter函数来关闭打印机。然后,可以使用EnumJobs函数来获取打印机的作业信息和状态。具体的代码如下所示: ```csharp using System.Runtime.InteropServices; [DllImport("winspool.drv", CharSet = CharSet.Auto)] public static extern bool OpenPrinter(string pPrinterName, out IntPtr phPrinter, IntPtr pDefault);//打开打印机 [DllImport("winspool.drv", CharSet = CharSet.Auto)] public static extern bool ClosePrinter(IntPtr hPrinter);//关闭 [DllImport("winspool.drv", CharSet = CharSet.Auto)] public static extern int EnumJobs(IntPtr hPrinter, int FirstJob, int NoJobs, int Level, IntPtr pInfo, int cdBuf,out int pcbNeeded, out int pcReturned);//状态获取 //在代码中使用以上函数来监控立象打印机的状态 IntPtr handle; int FirstJob = 0; int NumJobs = 127; int pcbNeeded; int pcReturned; // 打开打印机 bool settest = OpenPrinter(printerToPeek, out handle, IntPtr.Zero); // 获取所需的字节数,这里假设打印机的最大作业数量为128 (0..127) EnumJobs(handle, FirstJob, NumJobs, 1, IntPtr.Zero, 0, out pcbNeeded, out pcReturned); // 分配非托管内存 IntPtr pData = Marshal.AllocHGlobal(pcbNeeded); // 获取作业信息 EnumJobs(handle, FirstJob, NumJobs, 1, pData, pcbNeeded, out pcbNeeded, out pcReturned); ``` 请注意,"printerToPeek"应该替换为具体的立象打印机的名称。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值