windows – 需要一种可以驱动两台打印机的快速编程语言

前端之家收集整理的这篇文章主要介绍了windows – 需要一种可以驱动两台打印机的快速编程语言前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个相当不寻常的应用程序,不能按我需要的方式工作,我希望这里有人会有一些建议或至少有一个方向来调查.

我们有一个博物馆展览,在入口处有一台计算机,驱动两个小收据打印机.控制台上有两个按钮,连接到开窗鼠标的左右按钮.这两个打印机和相关按钮适用于女孩和男孩,每个按钮从名称数据库随机选择,并在适当的打印机上打印一张带有图形图像的小票,一些关于展览的文字随机选择的名称.

概念上一切都很好,但它经常挂起.我在最后一分钟得到了这个项目,因为最初的设计师陷入困境并无法交付,所以展览的作者在开幕前一天问我,我是否可以写一些有用的东西.

我用Word做过,因为我是一位经验丰富的VBA程序员.我尝试的其他几个途径都导致死胡同 – 一个不能做图形,另一个不能处理两个打印机,另一个不能改变字体等等.问题是它根本不够快 – Word一次只能驱动一台打印机,而更换活动打印机需要很长时间.不是办公室标准,在打印机开始处理文档之前的第二个或两个延迟不是问题,但在这里我需要或多或少的即时响应.如果孩子按下按钮并且没有任何反应,他们会一遍又一遍地按下它直到确实发生了某些事情,导致在打印机开始反应之前可能发送了6个命令.有时它完全堵塞程序,因为男孩和女孩将同时按下两个按钮并且Word锁定,即使它没有卡住,打印机也会吐出一串票,弄得一团糟.孩子们开始争吵哪张票是哪张票,把它们从打印机中拿出来,咆哮纸带,堵塞打印机,一般搞乱了整个事件,往往需要展览管理员不得不重新启动计算机并清除撕碎的碎片.纸张打印机.

我需要的是某种快速编程语言可以驱动两台打印机* – 同时 – *,而不是必须切换活动打印机的MSOffice claptrap,它可以对鼠标左键和右键单击事件作出反应,可以打印一个小的图形图像,可以打印不同的字体大小和样式.我不需要很多,但它不是一个字体.

任何人都可以建议我可以用于此吗?我甚至不知道在Windows下是否可能,“单一活动打印机”垃圾是Office工件还是Windows限制.二十五年前,我的小Commodore-64有两台打印机连接在一起,并且没有任何困难同时驱动它们 – 在我看来它今天不应该是如此不可能的要求.

作为一名 Python程序员,我会使用类似 MSWinPrint.py的东西,并使用Python直接渲染文档.看起来它支持文本和图像,您可以通过名称轻松选择系统中的任何打印机.

你需要:

>安装Python.
>安装Python for Windows Extensions.
>安装PIL.
>安装MSWinPrint.

然后,您需要编写一个程序来进行打印.像下面这样的东西.

#python
import sys
import Image,ImageWin
import MSWinPrint

# workaround for PIL namespace change
MSWinPrint.ImageWin = ImageWin

def print_name(name,printer_name):
    doc = MSWinPrint.document(printer_name)
    doc.begin_document('naMetag for %s' % name)
    # print the name at position 20,20
    text_pos = 20,20
    doc.text(text_pos,name)
    # add an image for this person
    img_pos = 40,40
    img_size = 100,100
    doc.image(img_pos,get_image(),img_size)
    doc.end_document()

def get_image():
    image_filename = 'my image.jpg'
    return Image.open(image_filename)

if __name__ == '__main__':
    name,printer_name = sys.argv[1:]
    print_name(name,printer_name)

如果将其保存为print_tag.py,则可以使用两个命令行参数,要打印的名称和图像文件名来执行它.

print_tag.py Sally "EPSON Artisan 810"

我运行了这段代码,效果很好.我不知道创建自定义打印作业可能很容易.

您当然可以根据需要随意在任意数量的打印机上运行程序.当你运行打印作业的方式时,你可以做更多的事情来定制.您可以自定义代码以始终运行并解释鼠标单击(为此您可能需要wxPython),或者您可能有另一个程序只执行脚本.

猜你在找的Windows相关文章