分享 tsc 条码打印机 打印控件 调用方法 , c# silverlight

下载 TSCLIB.dll

http://download.csdn.net/detail/peiyu_peiyu/4789714  或 网上搜索 TSCLIB.dll

复制到 windows\system  文件夹下

c#

public class tcsBasePrint
    {

        //[DllImport("TSCLib.dll")]
        //public static extern int sendcommand(string command);//open connect port  

        //[DllImport("TSCLib.dll")]
        //public  static extern int openport(string port);//open connect port   
        //[DllImport("TSCLib.dll")]
        //public static extern int closeport();//close connect port
        //[DllImport("TSCLib.dll")]
        ///*
        // width:列印宽度,单位mm
        // height:列印长度,单位mm
        // speed:列印速度            4.0   代表每秒4英寸速度
        // density:列印浓度          0-15 越大表示浓度越高
        // sensor:设定感测器类别     0     表示垂直感测器,1 表示黑标感测器
        // vertical:设定间距高度
        // pchar:设定偏移间距        0     参数一般设为0
        // */
        //public static extern int setup(string width, string height, string speed, string density, string sensor, string vertical, string pchar);

        //[DllImport("TSCLib.dll")]
        //public static extern int clearbuffer();//clear buffer
        //[DllImport("TSCLib.dll")]
        ///*
        // x:字串型別,條碼X 方向起始點,以點(point)表示。(200 DPI,1 點=1/8 mm, 300 DPI,1 點=1/12 mm)
        // y:条码Y方向起始点
        // codeType:条码类型(128,39,93等)
        // height:代表条码的高度,高度以点来表示
        // readable:设定是否列印条码码文
        // rotation:设定条码的旋转角度
        // narrow:设定条码窄的比例因子
        // wide:设定条码宽的比例因子
        // code:条码内容
        // pchar:设定偏移间距        0     参数一般设为0
        // */
        ///*
        // narrow : wide
        //        1:1
        // narrow : wide
        //        1:2
        // narrow : wide
        //        1:3
        // narrow : wide
        //        2:5
        // narrow : wide
        //        3:7  
        // */
        //public static extern int barcode(string x, string y, string codeType, string height, string readable, string rotation, string narrow, string wide, string code, string pchar);

        //[DllImport("TSCLib.dll")]
        ///*
        // x:文字X方向起始点
        // y:文字Y方向起始点
        // fontName:文字类型
        // rotation:文字旋转角度
        // xmul:设定文字X方向的放大倍率
        // ymul:设定文字Y方向的放大倍率
        // content:列印文字的内容
        // */
        //public static extern int printerfont(string x, string y, string fontName, string rotation, string xmul, string ymul, string content);

        //[DllImport("TSCLib.dll")]
        ///*
        // x:文字X方向起始点
        // y:文字Y方向起始点
        // fontHeight:字体高度
        // rotation:文字旋转角度
        // fontStyle:字体外形
        // fontUnderline:底线
        // faceName:字体名称
        // content:列印内容
        // */
        //public static extern int windowsfont(int x, int y, int fontHeight, int rotation, int fontStyle, int fontUnderline, string faceName, string content);

        //[DllImport("TSCLib.dll")]
        ///*
        //打印设置
        // a为式数
        // b为份数
        //*/
        //public static extern int printlabel(string a, string b);

        //[DllImport("TSCLib.dll")]
        ///*
        // 设定打印后回卷
        // */
        //public static extern int formfeed();

        //[DllImport("TSCLib.dll")]
        ///*
        //  设定打印不后回卷
        //*/
        //public static extern int nobackfeed();

        [DllImport("TSCLIB.dll")]
        public static extern int about();

        [DllImport("TSCLIB.dll", EntryPoint = "openport")]
        public static extern int openport(string printername);

        [DllImport("TSCLIB.dll", EntryPoint = "barcode")]
        public static extern int barcode(string x, string y, string type, string height, string readable, string rotation, string narrow, string wide, string code);

        [DllImport("TSCLIB.dll", EntryPoint = "clearbuffer")]
        public static extern int clearbuffer();

        [DllImport("TSCLIB.dll", EntryPoint = "closeport")]
        public static extern int closeport();

        [DllImport("TSCLIB.dll", EntryPoint = "downloadpcx")]
        public static extern int downloadpcx(string filename, string image_name);

        [DllImport("TSCLIB.dll", EntryPoint = "formfeed")]
        public static extern int formfeed();

        [DllImport("TSCLIB.dll", EntryPoint = "nobackfeed")]
        public static extern int nobackfeed();

        [DllImport("TSCLIB.dll", EntryPoint = "printerfont")]
        public static extern int printerfont(string x, string y, string fonttype, string rotation, string xmul, string ymul, string text);

        [DllImport("TSCLIB.dll", EntryPoint = "printlabel")]
        public static extern int printlabel(string set, string copy);

        [DllImport("TSCLIB.dll", EntryPoint = "sendcommand")]
        public static extern int sendcommand(string printercommand);

        [DllImport("TSCLIB.dll", EntryPoint = "setup")]
        public static extern int setup(string width, string height, string speed, string density, string sensor, string vertical, string offset);

        [DllImport("TSCLIB.dll", EntryPoint = "windowsfont")]
        public static extern int windowsfont(int x, int y, int fontheight, int rotation, int fontstyle, int fontunderline, string szFaceName, string content);

    }

调用:

return printobj.tcsBasePrint.about();

printobj.tcsBasePrint.openport(prot);   // // prot 打印机名称 从 控制面板  ”设备和打印机“ 拷贝即可
            printobj.tcsBasePrint.clearbuffer();
        
                    printobj.tcsBasePrint.windowsfont(x, y, 20,"0", 2, 0, "微软雅黑", strt1);//X Y 坐标  strt1 字符串
                 
                    switch (barcodetype.ToLower())
                    {
                        case "128":
                        case "39":
                            printobj.tcsBasePrint.barcode(x.ToString(), y.ToString(), barcodetype, "20", "1", "0", "2", "1", strt1);
                           
                            break;
                       case "qr":
                            printobj.tcsBasePrint.sendcommand("QRCODE " + x.ToString() + "," + y.ToString() + ",M,7,A,0,\"" + strt1 + "\"");
      break;
                        case "pdf417":
                            printobj.tcsBasePrint.sendcommand("PDF417 " + x.ToString() + "," + y.ToString() + ",300,200," + (modelhead.i03.Value + 180).ToString() + ",\"" + strt1 + "\"");

                            break;
                    }
                   // System.Threading.Thread.Sleep(10);

                    continue;
                }
               
            }
          
            printobj.tcsBasePrint.printlabel("1", "1");
            printobj.tcsBasePrint.closeport();

c# silverlight的更多相关文章

  1. Silverlight 后台设置 button 纯色背景

    silverlight Button直接设置其background为某一颜色往往达不到效果.因为其内置模板把按钮背景弄成一个渐变画刷.所以想要纯色的背景就修改其模板. 在后台修改模板的代码如下: St ...

  2. 添加Silverlight应用到HTML

    Silverlight是跨浏览器,跨客户平台的浏览器插件,可以应用在Windows,Linux,Mac等平台.作为浏览器插件,Silverlight可以像Flash一样,很方便的嵌套在HTML页面中, ...

  3. Silverlight 手鼓达人-仿太鼓达人 开源

    Silverlight 手鼓达人-仿太鼓达人 介绍  手鼓达人是本人2012年中silverlight最火的一段时间开发的,本来目的只是想研究一下silverlight做游戏和做应用有何不同,但是后面 ...

  4. silverlight使用小计(先做记录后续整理)

    1.Grid: a.通过获取指定行的高度和指定列的宽度来获取指定单元格的宽高 b.几种宽高默认值: 宽高(Width/Heigth):1* 最大宽高(MaxWidth/MaxHeigth):正无穷大 ...

  5. SilverLight抛出 System.InvalidOperationException: 超出了2083 的最大URI

    在SilverLight中对于抛出 System.InvalidOperationException: 超出了 2083 的最大 URI 长度 的异常 处理 其实很简单 在 EntityFramewo ...

  6. 【Silverlight】打开Silverlight程序报错,"未找到导入的项目......请确认<Import>声明中的路径正确,且磁盘上存在该文件"

    在打开Silverlight程序时,报错(如图所示),程序使用的是Visual Studio 2013和最新的Silverlight版本(Silverlight5). 然后我在网上找了下说:Silve ...

  7. Silverlight 使用DataContractJsonSerializer序列化与反序列化 Json

    环境说明:Silverlight 5.1,.Net Framework  ​4.0 1.添加引用System.ServiceModel.Web.dll. 因为 System.Runtime.Seria ...

  8. Silverlight及WPF中实现自定义BusyIndicator

    在开发Silverlight或者WPF项目时,当我们调用Web服务来加载一些数据时,由于数据量比较大需要较长的时间,需要用户等待,为了给用户友好的提示和避免用户在加载数据过程中进行重复操作,我们通常使 ...

  9. Silverlight和WPF中DataContractJsonSerializer对时间的处理差异

    原创文章转载请注明出处:@协思, http://zeeman.cnblogs.com Silverlight脱胎于WPF,他们的行为不完全并不完全相同,DataContractJsonSerializ ...

  10. [SL] Silverlight + WCF Demo项目

    I:项目描述:利用 Silverlight+WCF 技术,模拟资源管理器(如图1)功能,通过地址栏输入本地文件夹路径,然后将解析出来的该目录下所有文件(夹)存储到数据库中,然后再加载到界面上显示出来: ...

随机推荐

  1. shell与if相关参数

    [ -a FILE ] 如果 FILE 存在则为真. [ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真. [ -c FILE ] 如果 FILE 存在且是一个字特殊文件则为真. [ ...

  2. 进程waitpid()的用法

    代码分析: /* waitpid.c */ #include <sys/types.h> #include <sys/wait.h> #include <unistd.h ...

  3. CG之菲涅尔效果简单实现

    菲涅尔效果,指当光到达两种材质的接触面时,一些光在接触面的表面被反射出去,而另一部分光将发生折射穿过接触面. 现在要用shader来实现这种效果,如果要精确地描述这种底层的物理,其计算公式是非常复杂的 ...

  4. oracle 主键自动增长

    oracle 主键自动增长 2009-12-11 16:07:00|  分类: 数据库资料|字号 订阅     这几天搞Oracle,想让表的主键实现自动增长,查网络实现如下: create tabl ...

  5. CodeForces 610A Pasha and Stick

    #include<cstdio> #include<cstring> #include<cmath> #include<algorithm> using ...

  6. JS——实现短信验证码的倒计时功能(没有验证码,只有倒计时)

    1.功能描述 当用户想要获取验证码时,就点击 免费获取验证码 ,然后开始倒计时,倒计时期间按钮文字为剩余时间x秒,且不可按状态,倒计时结束后,按钮更改为点击重新发送. 2.分析 必须用到定时器.按钮点 ...

  7. javascript技巧大全套

    事件源对象 event.srcElement.tagName event.srcElement.type 捕获释放 event.srcElement.setCapture();  event.srcE ...

  8. Hibernate---第一个helloworld程序 (XML版本, annotation版本)

    Hibernate作为JPA的一种实现,jpa的注解已经是hibernate的核心,hibernate只提供了一些补充,而不是两套注解.hibernate对jpa的支持够足量,在使用hibernate ...

  9. mysql 插入数据后返回当前的自增ID方法

    存储过程的写法: mysql>create procedure test( ->in username varchar(50), ->in password varchar(50), ...

  10. 14、手把手教你Extjs5(十四)模块字段和Grid列的定义[2]

    model和columns生成好了,下面要修改一下Module.js和Grid.js中的代码,使其能够协同工作. /** * 一个模块的主控界面的容器,用来安放各个模块控件以及协调他们之间的关系 */ ...