通过python向并行打印机发送命令

大家好,
我需要自动化打印机命令测试,Prinetr支持
平行/
串行/USB.如何将命令从Python发送到打印机.
我已经有了Pyparallel,就像Python的新手一样,不知道如何进行工作
它.
请给出一些提示,要发送到打印机的Comamnd是十六进制
数据" 1b 40".请举一个例子,这将是感谢的.
谢谢你.在it.comp.lang.python中张贴
问候
-hari

# 回答1


哈里写道:
如果打印机连接到运行程序的计算机,则可以打开
打印机以二进制模式直接写入.如果是网络打印机
您将需要写信给假件.
打印机= open(" lpt1"," wb")
打印机Write(int('01b',16),int('40',16)
打印机.close()
-larry
# 回答2


恩星期三,2007年12月5日10:19:51 -0300,hari a)如何控制打印机端口:
您应该查找有关协议和时间安排的一些信息.我隐约地
请记住,您应该将所需数据写在八个数据行上,
然后将频闪控制信号设置一段时间,然后重置信号.
这样的事情:
导入平行
端口= Parallel.Parallel()
def send_to_printer(字节):
对于字节中的字节:
port.setdata(ord(byte))
port.setdatastrobe(1)
睡觉(...)
port.setdatastrobe(0)
睡觉(...)
send_to_printer(" Hello World \ r \ n")
您必须在每种情况下寻找适当的值才能入睡.那些1/0
也可以逆转.
b)如何转换十六进制数据:
最简单的方法是:send_to_printer(" \ x1b \ x40")
如果您已经构建了字符串" 1B 40":
def hex_to_raw(十六进制):
返回''.join([chr(int(num,16)),用于num in hex.split()])
数据=" 1b 40"
send_to_printer(hex_to_raw(data))
- -
Gabriel Genellina

标签: python

添加新评论