首页 > 其他分享 >pyinstaller 使用ecs/pos操作pos小票打印机

pyinstaller 使用ecs/pos操作pos小票打印机

时间:2023-10-20 18:00:58浏览次数:46  
标签:pyinstaller escpos 小票 -- pos python add logo

# 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

相关文章

  • postgresql【JSONB用法】
    //userNametypecode是我拿到数据结构出来的可以写固定值来测试;code字段为上面设置的唯一约束。如果code值没有变就是修改,否则就是新增INSERTINTO表名(username,type,code)VALUES('${userName}','${type}','${code}')ONCONFLICT9.6语法支持(code)DOUPDATE......
  • 多线程编程同步:Posix信号量
    信号量的定义IPC是进程间通信(interprocesscommunication)的简称。狭义上,IPC主要用于进程间;广义上,IPC可用于进程间或线程间。Posix消息队列、Posix信号量和Posix共享内存区合称为“PosixIPC”.信号量(semaphore)是一种用于提供不同进程间或一个给定进程的不同线程间同步手段。......
  • Epoque: Practical End-to-End Verifiable Post-Quantum-Secure E-Voting
    Abstract—Theultimategoalinmodernsecuree-votingistoenableeveryonetoverifywhetherthefinalelectionresultcorrectlyreflectsthevoteschosenbythe(human)voters,withoutexposinghoweachindividualvoted.Thesefundamentalsecurityproper......
  • 深入了解 PostgreSQL:功能、特性和部署
    PostgreSQL,通常简称为Postgres,是一款强大且开源的关系型数据库管理系统(RDBMS),它在数据存储和处理方面提供了广泛的功能和灵活性。本文将详细介绍PostgreSQL的功能、特性以及如何部署和使用它。什么是PostgreSQL?PostgreSQL是一款开源的、免费的关系型数据库管理系统。它具有以下......
  • 接口管理神器Apipost
    自诞生以来,Apipost凭借其简洁直观的用户界面、强大的功能以及简单、易上手的操作,让Apipost成为了开发人员不可或缺的工具。本文将详细介绍Apipost的主要功能和使用方法,帮助大家更好地了解这款优秀的API开发工具。下载安装直接进入Apipost官网下载即可,也可以直接使用web端无需下载AP......
  • 接口管理神器Apipost
    自诞生以来,Apipost凭借其简洁直观的用户界面、强大的功能以及简单、易上手的操作,让Apipost成为了开发人员不可或缺的工具。本文将详细介绍Apipost的主要功能和使用方法,帮助大家更好地了解这款优秀的API开发工具。下载安装直接进入Apipost官网下载即可,也可以直接使用web端无需下......
  • PostgreSQL查询约束和创建删除约束
    查询约束SELECTtc.constraint_name,tc.table_name,kcu.column_name,ccu.table_nameASforeign_table_name,ccu.column_nameASforeign_column_name,tc.is_deferrable,tc.initially_deferredFROMinformation_schema.table_constraintsAStc......
  • Spring扩展接口(3):BeanFactoryPostProcessor
    在此系列文章中,我总结了Spring几乎所有的扩展接口,以及各个扩展点的使用场景。并整理出一个bean在spring中从被加载到最终初始化的所有可扩展点的顺序调用图。这样,我们也可以看到bean是如何一步步加载到spring容器中的。BeanFactoryPostProcessor1、概述publicinterfaceBea......
  • docker compose部署gitlab
    这里部署的是目前最新的16.4.1版本docker版本Client:DockerEngine-CommunityVersion:24.0.6APIversion:1.43Goversion:go1.20.7Gitcommit:ed223bcBuilt:MonSep412:31:442023OS/Arch:linux/a......
  • docker-compose搭建多主机分布式minio
    minio介绍Minio是个基于Golang编写的开源对象存储套件,虽然轻量,却拥有着不错的性能。官网地址:MinIO|HighPerformance,KubernetesNativeObjectStorage何为对象存储?我们来看下阿里云OSS(ObjectStorageService)的介绍:对象存储服务(ObjectStorageService,OSS)是一种海量......