加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

PLB条码打印

发布时间:2020-12-15 17:52:45 所属栏目:百科 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; usi

以下代码由PHP站长网 52php.cn收集自互联网

现在PHP站长网小编把它分享给大家,仅供参考

    using System;  
    using System.Collections.Generic;  
    using System.ComponentModel;  
    using System.Data;  
    using System.Drawing;  
    using System.Text;  
    using System.Windows.Forms;  
    using System.Runtime.InteropServices;//This is about DllImport.  
      
    namespace VCsharp_2005  
    {  
        public partial class Form1 : Form  
        {  
            const uint IMAGE_BITMAP = 0;  
            const uint LR_LOADFROMFILE = 16;  
            [DllImport("user32.dll",SetLastError = true,CharSet = CharSet.Auto)]  
            static extern IntPtr LoadImage(IntPtr hinst,string lpszName,uint uType,int cxDesired,int cyDesired,uint fuLoad);  
            [DllImport("Gdi32.dll",CharSet = CharSet.Auto)]  
            static extern int DeleteObject(IntPtr ho);  
            const string szSavePath = "C:Argox";  
            const string szSaveFile = "C:ArgoxPPLB_Example.Prn";  
            const string sznop1     = "nop_frontrn";  
            const string sznop2     = "nop_middlern";  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Bar2d_Maxi(int x,int y,int cl,int cc,int pc,string data);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Bar2d_PDF417(int x,int w,int v,int s,int c,int px,int py,int r,int l,int t,int o,string data);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Bar2d_PDF417_N(int x,string para,string data);  
            [DllImport("Winpplb.dll")]  
            private static extern void B_ClosePrn();  
            [DllImport("Winpplb.dll")]  
            private static extern int B_CreatePrn(int selection,string filename);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Del_Form(string formname);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Del_Pcx(string pcxname);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Draw_Box(int x,int thickness,int hor_dots,int ver_dots);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Draw_Line(char mode,int x,int ver_dots);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Error_Reporting(char option);  
            [DllImport("Winpplb.dll")]  
            private static extern IntPtr B_Get_DLL_Version(int nShowMessage);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Get_DLL_VersionA(int nShowMessage);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Get_Graphic_ColorBMP(int x,string filename);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Get_Graphic_ColorBMPEx(int x,int nWidth,int nHeight,int rotate,string id_name,string filename);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Get_Graphic_ColorBMP_HBitmap(int x,IntPtr hbm);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Get_Pcx(int x,string filename);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Initial_Setting(int Type,string Source);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_WriteData(int IsImmediate,byte[] pbuf,int length);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_ReadData(byte[] pbuf,int length,int dwTimeoutms);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Load_Pcx(int x,string pcxname);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Open_ChineseFont(string path);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Print_Form(int labset,int copies,string form_out,string var);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Print_MCopy(int labset,int copies);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Print_Out(int labset);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Prn_Barcode(int x,int ori,string type,int narrow,int width,int height,char human,string data);  
            [DllImport("Winpplb.dll")]  
            private static extern void B_Prn_Configuration();  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Prn_Text(int x,int font,int hor_factor,int ver_factor,char mode,string data);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Prn_Text_Chinese(int x,int fonttype,string data);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Prn_Text_TrueType(int x,int FSize,string FType,int Fspin,int FWeight,int FItalic,int FUnline,int FStrikeOut,string data);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Prn_Text_TrueType_W(int x,int FHeight,int FWidth,string data);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Select_Option(int option);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Select_Option2(int option,int p);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Select_Symbol(int num_bit,int symbol,int country);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Select_Symbol2(int num_bit,string csymbol,int country);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Set_Backfeed(char option);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Set_BMPSave(int nSave,string strBMPFName);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Set_Darkness(int darkness);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Set_DebugDialog(int nEnable);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Set_Direction(char direction);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Set_Form(string formfile);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Set_Labgap(int lablength,int gaplength);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Set_Labwidth(int labwidth);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Set_Originpoint(int hor,int ver);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Set_Prncomport(int baud,char parity,int data,int stop);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Set_Prncomport_PC(int nBaudRate,int nByteSize,int nParity,int nStopBits,int nDsr,int nCts,int nXonXoff);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Set_Speed(int speed);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Set_ProcessDlg(int nShow);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_GetUSBBufferLen();  
            [DllImport("Winpplb.dll")]  
            private static extern int B_EnumUSB(byte[] buf);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_CreateUSBPort(int nPort);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_ResetPrinter();  
            [DllImport("Winpplb.dll")]  
            private static extern int B_GetPrinterResponse(byte[] buf,int nMax);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_TFeedMode(int nMode);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_TFeedTest();  
            [DllImport("Winpplb.dll")]  
            private static extern int B_CreatePort(int nPortType,int nPort,string filename);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Execute_Form(string form_out,string var);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Bar2d_QR(int x,int model,int scl,char error,char dinput,int d,int p,string data);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_GetNetPrinterBufferLen();  
            [DllImport("Winpplb.dll")]  
            private static extern int B_EnumNetPrinter(byte[] buf);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_CreateNetPort(int nPort);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Prn_Text_TrueType_Uni(int x,byte[] data,int format);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Prn_Text_TrueType_UniB(int x,int format);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_GetUSBDeviceInfo(int nPort,byte[] pDeviceName,out int pDeviceNameLen,byte[] pDevicePath,out int pDevicePathLen);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Set_EncryptionKey(string encryptionKey);  
            [DllImport("Winpplb.dll")]  
            private static extern int B_Check_EncryptionKey(string decodeKey,string encryptionKey,int dwTimeoutms);  
      
            public Form1()  
            {  
                InitializeComponent();  
            }  
      
            private void button1_Click(object sender,EventArgs e)  
            {  
                //Test code start  
                // open port.  
                int nLen,ret,sw;  
                byte[] pbuf = new byte[128];  
                string strmsg;  
                IntPtr ver;  
                System.Text.Encoding encAscII = System.Text.Encoding.ASCII;  
                System.Text.Encoding encUnicode = System.Text.Encoding.Unicode;  
      
                // dll version.  
                ver = B_Get_DLL_Version(0);  
      
                // search port.  
                nLen = B_GetUSBBufferLen() + 1;  
                strmsg = "DLL ";  
                strmsg += Marshal.PtrToStringAnsi(ver);  
                strmsg += "rn";  
                if (nLen > 1)  
                {  
                    byte[] buf1,buf2;  
                    int len1 = 128,len2 = 128;  
                    buf1 = new byte[len1];  
                    buf2 = new byte[len2];  
                    B_EnumUSB(pbuf);  
                    B_GetUSBDeviceInfo(1,buf1,out len1,buf2,out len2);  
                    sw = 1;  
                    if (1 == sw)  
                    {  
                        ret = B_CreatePrn(12,encAscII.GetString(buf2,len2));// open usb.  
                    }  
                    else  
                    {  
                        ret = B_CreateUSBPort(1);// must call B_GetUSBBufferLen() function fisrt.  
                    }  
                    if (0 != ret) {  
                        strmsg += "Open USB fail!";  
                    }  
                    else {  
                        strmsg += "Open USB:rnDevice name: ";  
                        strmsg += encAscII.GetString(buf1,len1);  
                        strmsg += "rnDevice path: ";  
                        strmsg += encAscII.GetString(buf2,len2);  
                        //sw = 2;  
                        if (2 == sw)  
                        {  
                            //Immediate Error Report.  
                            B_WriteData(1,encAscII.GetBytes("^eern"),5);//^ee  
                            ret = B_ReadData(pbuf,4,1000);  
                        }  
                    }  
                }  
                else  
                {  
                    System.IO.Directory.CreateDirectory(szSavePath);  
                    ret = B_CreatePrn(0,szSaveFile);// open file.  
                    strmsg += "Open ";  
                    strmsg += szSaveFile;  
                    if (0 != ret) {  
                        strmsg += " file fail!";  
                    }  
                    else {  
                        strmsg += " file succeed!";  
                    }  
                }  
                MessageBox.Show(strmsg);  
                if (0 != ret)  
                    return;  
      
                // sample setting.  
                B_Set_DebugDialog(1);  
                B_Set_Originpoint(0,0);  
                B_Select_Option(2);  
                B_Set_Darkness(8);  
                B_Del_Pcx("*");// delete all picture.  
                B_WriteData(0,encAscII.GetBytes(sznop2),sznop2.Length);  
                B_WriteData(1,encAscII.GetBytes(sznop1),sznop1.Length);  
      
                //draw box.  
                B_Draw_Box(20,20,760,560);  
                B_Draw_Line('O',400,540);  
      
                //print text,true type text.  
                B_Prn_Text(30,40,2,1,'N',"PPLB Lib Example");  
                B_Prn_Text_TrueType(30,100,30,"Arial","AA","TrueType Font");//save in printer.  
                B_Prn_Text_TrueType_W(30,160,"Times New Roman","AB","TT_W: 多字元測試");  
                B_Prn_Text_TrueType_Uni(30,220,"AC",Encoding.Unicode.GetBytes("TT_Uni: 多字元測試"),1);//UTF-16  
                encUnicode.GetBytes("xFEFF",pbuf,0);//UTF-16.//pbuf[0]=0xFF,pbuf[1]=0xFE;  
                encUnicode.GetBytes("TT_UniB: 多字元測試",14,2);//copy mutil byte.  
                encUnicode.GetBytes("x0000",30);//null.//pbuf[30]=0x00,pbuf[31]=0x00;  
                B_Prn_Text_TrueType_UniB(30,280,"AD",0);//Byte Order Mark.  
      
                //barcode.  
                B_Prn_Barcode(420,"3",3,'B',"1234<+1>");//have a counter  
                B_Bar2d_QR(420,200,'M','A',"QR CODE");  
      
                //picture.  
                B_Get_Graphic_ColorBMP(420,"bb.bmp");// Color bmp file.  
                B_Get_Graphic_ColorBMPEx(420,320,150,"bb1","bb.bmp");//180 angle.  
                IntPtr himage = LoadImage(IntPtr.Zero,"bb.bmp",IMAGE_BITMAP,LR_LOADFROMFILE);  
                B_Get_Graphic_ColorBMP_HBitmap(630,250,80,"bb2",himage);//90 angle.  
                if (IntPtr.Zero != himage)  
                    DeleteObject(himage);  
      
                // output.  
                B_Print_Out(2);// copy 2.  
      
                // close port.  
                B_ClosePrn();  
            }  
      
            private void button2_Click(object sender,EventArgs e)  
            {  
                //PPLBDLL Test code start  
                //B_CreatePrn(0,null);  
      
                /* 
                    int B_CreatePrn(int selection,LPCTSTR 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".    
                 *  
                    int B_CreateUSBPort(int nPort); 
                    參數: 
                        nPort; 
                          USB 傳輸埠 ; nPort由1開始. 
                 */  
                // USB Port Open  
                int nUSBDataLen;  
                byte[] pbuf;  
                nUSBDataLen = B_GetUSBBufferLen()+1;  
                pbuf = new byte[nUSBDataLen];  
                B_EnumUSB(pbuf);  
                B_CreateUSBPort(1);  
      
      
                // Open com3  
                //B_CreatePort(1,null);  
                //B_Set_Darkness(8);  
                //B_Select_Option(1);  
                //B_Set_Labgap(50,24);  
                //B_Set_Labwidth(816);  
                //B_Set_Speed(2);  
                //B_Error_Reporting('S');  
      
                B_Prn_Text(100,"FONT 3");    //Get a text string.  
                // B_Prn_Text(200,10,"Text 3<+1>");  
                B_Prn_Barcode(20,"1",75,"079-305"); //Get a bar code.  
                //Get a PDF-417 2D bar code.  
                //B_Bar2d_PDF417(50,300,7,"ARGOXINFO");  
                //Get a Maxi Code 2D bar code.  
                B_Bar2d_Maxi(400,93065,"This MaxiCode");  
                B_Draw_Line('E',380,10);  //Line Draw by Exclusive or operation.  
                //B_Draw_Line('O',180,100);  //Line draw by or operation.  
                //B_Draw_Line('W',10); //Draw white line.  
                //B_Draw_Line('E',450,110);  //Line Draw by Exclusive or operation.  
                //B_Draw_Box(0,5,815,300);     //Draw a box.  
                // B_Get_Pcx(50,55,"phone.pcx"); //Print Graphics of .PCX.  
                //B_Get_Pcx(400,"test1.pcx");  
                B_Prn_Text_TrueType(450,"Library Test");  
                // Get a truetype text  
                //B_Prn_Text_TrueType(30,50,"TrueType Font");  
                B_Print_Out(1);  
                B_ClosePrn();  
                //PPLBDLL Test code end  
            }  
        }  
    }  

以上内容由PHP站长网【52php.cn】收集整理供大家参考研究

如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读