永发信息网

你好,请问你可以发我一份C#中调用tsc打印机的资料吗?

答案:2  悬赏:40  手机版
解决时间 2021-01-24 17:44
你好,请问你可以发我一份C#中调用tsc打印机的资料吗?
最佳答案
public class Print
{
string printName;
[System.Runtime.InteropServices.DllImport("tsclib.dll")]
public static extern void windowsfont(int a, int b, int c, int d, int e, int f, string g, string h);
[System.Runtime.InteropServices.DllImport("tsclib.dll")]
public static extern void openport(string printername);
[System.Runtime.InteropServices.DllImport("tsclib.dll")]
public static extern void closeport();
[System.Runtime.InteropServices.DllImport("tsclib.dll")]
public static extern void sendcommand(string command);
[System.Runtime.InteropServices.DllImport("tsclib.dll")]
public static extern void setup(string width, string height, string speed, string density, string sensor, string vertical, string offset);
[System.Runtime.InteropServices.DllImport("tsclib.dll")]
public static extern void clearbuffer();
[System.Runtime.InteropServices.DllImport("tsclib.dll")]
public static extern void printlabel(string Set, string Copy);
[System.Runtime.InteropServices.DllImport("tsclib.dll")]
public static extern void printerfont(string x, string y, string fonttype, string rotation, string xmul, string ymul, string text);
[System.Runtime.InteropServices.DllImport("tsclib.dll")]
public static extern int barcode(string x, string y, string type, string height, string readable, string rotation, string narrow, string wide, string code);

public void testPrint()
{
openport(this.printName);
clearbuffer();
windowsfont(25, 30, 70, 0, 0, 0, "黑体", "连接成功");
printlabel("1", "1");
closeport();
}
public void printBegin()
{
openport(this.printName);
}
public void printOut()
{
clearbuffer();
windowsfont(10, 30, 50, 0, 0, 0, "黑体", "Print Font Test");
barcode("10", "150", "93", "90", "1", "0", "2", "2", "barCode");
downloadpcx("UL.PCX", "UL.PCX");
sendcommand("PUTPCX 100,400,\"UL.PCX\"");
printlabel("1", "1");
}
public void printEnd()
{
closeport();
}
}
全部回答
你可以通过设置你的默认打印机来保证你的默认打印机是tsc打印机,但是判断打印机是否打印成功好像很难做到,因为windows系统是后台打印,前台不好控制,不象dos系统,更何况卡纸、串行、没墨(包括色带)等现象根本无法用软件来判断。还是在程序中作个提示吧,由操作者判断是否打印成功,然后再根据操作者选择的结果作相应的处理。连windows里面的打印测试页都会问你打印是否正确,如果它能确定的还要多此一问吗? using system.management; private const string _classname = "select * from win32_printer"; #region 设置默认打印机 void setdefaultprinter(string printername) { managementobjectsearcher query = new managementobjectsearcher(_classname); querycollection = query.get(); foreach (managementobject mo in querycollection) { if (string.compare(mo["name"].tostring(), printername, true) == 0) { mo.invokemethod("setdefaultprinter", null); break; } } } #endregion #region 打印机是否存在 bool isprintexists(string printername) { foreach (string pname in system.drawing.printing.printersettings.installedprinters) { if (pname == printername) { return true; } } return false; } #endregion
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
龙缘国际马术俱乐部地址在什么地方,想过去办
家里准备装20M的光纤,家里有150Mbps的TP-LIN
竹筒里看天打一成语
下图“网络谣言”漫画表明A. 网络是反映民意
刘恺威在现实生活中是什么样的一个人
广州艾瑞斯舞台灯光设备厂是一家专业从事一
你平常看的教育教学类的书籍和杂志有哪些?
Y69是否支持OTG
自酿酒用开水泡高粱行吗
海棠山门票多少钱?
两相电怎么才能带动三相电机
请问,技能书,技能书在上的NPC都能买到吗?还
下一轮牛市什么股票会成为龙头股
普贤行愿品偈领中无垢无破无穿漏各指什么
请回答有关下图的问题(13分)(1)图甲中①~
推荐资讯
白浒孤窑元青花瓷那里有出土
如图所示,T形截面对形心轴y-y的惯性矩为()。
HTL1100飞利浦怎么样才能连接索尼电视
上海都有哪些甲级医药类设计院
360桌面会不会导致电脑运行很慢?
浙江文科生靠浙大难还是理科考浙大难,
文山州马关县交警大队地址在什么地方,想过去
觉得自己的交友方式好像出了问题,为什么身边
有哪个手机软件是可以自己写小说、写故事的?
阴历阳历怎么换算
金刚藤与红土茯苓是一种药吗?
为什么很多公司饭堂的饭菜可以三四块那么便宜
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?