# pyinstaller --onefile --noconsole --add-data "logo.bmp:." --add-data "D:\PythonTest\ecs_pos_print\.venv\Lib\site-packages\escpos\capabilities.json:\escpos" Main_Windows.py
简介:
python也可以操作pos小票打印机,使用串口命令来打印,打印速度和打印质量不是windows驱动打印可以比的,毕竟是使用内置字库,算是硬件打印吧。
一:安装ecspos
python-escpos/python-escpos: Python library to manipulate ESC/POS printers (github.com)
pip install python-escpos[all]
二:安装usb驱动
Zadig - USB driver installation made easy (akeo.ie)
反正就是驱动不对,esc/pos就连不上打印机,我安装libusbk才可以正常使用python-ecspos。
尽管安装libusb-win32,也可以查看到USB打印机,但是无法操作,可能是pypthon-ecspos内部实现的不同。跟着用libusbk就好了。
在设备管理器找到你的USB打印支持,硬件ID,看一下PID,VID,打开zadig,options--list all devices,下拉选择pic,vid一致的设备,然后右边选择libusbk,reinstall driver即可。
三:简单的代码
from escpos.printer import Usb """ Seiko Epson Corp. Receipt Printer (EPSON TM-T88III) """ p = Usb(0x067B, 0x2305, 0, profile="TM-T88III") #这里改VID,PID p.text("Hello World\n") p.image("logo.gif") p.barcode('4006381333931', 'EAN13', 64, 2, '', '') p.cut()
注意改VID,PID.
四:pyinstaller打包
直接打包后提示我
escpos\capabilities.json 找不到
所以增加静态文件
# pyinstaller --onefile --noconsole --add-data "logo.bmp:." --add-data "D:\PythonTest\ecs_pos_print\.venv\Lib\site-packages\escpos\capabilities.json:\escpos" Main_Windows.py
这个logo是需要打印的,所以也打包进去,这个json就是提示找不到的文件。
--add-data 原文件路径:目标路径。
logo.bmp,我直接打包进根目录
json则是打包到\escpos目录。
打包完成后可以正常打开exe文件了。
标签:pyinstaller,escpos,小票,--,pos,python,add,logo From: https://www.cnblogs.com/jackadam/p/17777686.html