利用树莓派完成热敏打印机的无驱打印
引言
“热敏打印机的工作原理是打印头上安装有半导体加热元件,打印头加热并接触热敏打印纸后就可以打印出需要的图案,其原理与热敏式传真机类似。图象是通过加热,在膜中产生化学反应而生成的。这种热敏打印机化学反应是在一定的温度下进行的。高温会加速这种化学反应。当温度低于60℃时,纸需要经过相当长,甚至长达几年的时间才能变成深色;而当温度为200℃时,这种反映会在几微秒内完成。”——百度百科
众所周知,之所以安装打印机驱动,一个重要的原因就是打印机厂商千差万别,不同的打印机往往都有各自的驱动,很难实现万能驱动。但是,在 POS 打印机行业却有一条捷径,就是现在市面上的 POS 打印机基本上都支持爱普生指令,也就是说,只要将程序和打印机联通,直接向端口里面写爱普生指令就可以控制打印机。打印机接受到爱普生指令以后,自行进行解析,然后打印出相应的内容。—— Java 实现 POS 打印机无驱打印
python-escpos是一个可以让用户来访问那些支持ESC/POS命令的打印机的Python库。因此利用它即可完成实现在树莓派下的无驱打印功能。
本文在 Raspbian上测试通过。
需要安装的依赖软件
PyUSB
PyUSB 1.0 并不是Ubuntu的标配软件,需要手动下载和安装:
1、从Sourceforge 上面下载最新的tarbell
2、解压zip文件
3、安装库
> wget ... > unzip pyusb*.zip > cd pyusb* > python setup.py build > sudo python setup.py install
python-qrcode
> git clone https://github.com/lincolnloop/python-qrcode > cd python-qrcode > python setup.py build > sudo python setup.py install
安装
escpos 1.0-1
> wget http://python-escpos.googlecode.com/files/python-escpos-1.0.tgz > tar zxvf python-escpos-1.0.tgz > cd python-escpos-1.0 > python setup.py build > sudo python setup.py install
阅读ESCPOS中的README,设置打印机并打印。
1、需要安装的软件
* pyusb (python-usb)
* PIL (Python Image Library)
可以使用命令
apt-get install python-imaging python-usb python2.7-usbtc08 python-serial
进行安装。
2、定义打印机
用命令 “lsusb” 获取到当前打印机的"Vendor ID" 和"Product ID"
假如获取到的是0x04b8:0x0202,
3、定义打印机实例
输入下述代码,用python执行:
from escpos import *
""" Seiko Epson Corp. Receipt Printer M129 Definitions (EPSON TM-T88IV) """
Epson = escpos.Escpos(0x04b8,0x0202,0)
Epson.text("Hello World")
Epson.image("logo.gif")
Epson.barcode
Epson.barcode('1324354657687','EAN13',64,2,'','')
Epson.cut()
如果一切正常,则打印出“Hello World”以及一副图片,还有条形码。
参考文献:
https://code.google.com/p/python-escpos/wiki/RaspberryPi
https://code.google.com/p/python-escpos/wiki/Usage
利用树莓派完成热敏打印机的无驱打印相关推荐
- java usb 无驱打印_Windows Usb 无驱动打印
\?\USB#VID_8866&PID_0100#0001B0000000#{a5dcbf10-6530-11d2-901f-00c04fb951ed} USB小票打印解决办法 一.需要驱动, ...
- java 打印机类printer_GitHub - 505058216/thermal_printer: Java实现网络小票打印机自定义无驱打印...
Java实现POS打印机自定义无驱打印 热敏打印机使用越来越广泛,而安装驱动相当复杂,万幸的是,几乎所有的热敏打印机都支持ESC/P指令,参考网络上一些资料后,在此整理了一份自定义打印的方案 • 打印 ...
- java 小票打印_GitHub - SubLuLu/thermal_printer: Java实现网络小票打印机自定义无驱打印...
Java实现POS打印机自定义无驱打印 热敏打印机使用越来越广泛,而安装驱动相当复杂,万幸的是,几乎所有的热敏打印机都支持ESC/P指令,参考网络上一些资料后,在此整理了一份自定义打印的方案 • 打印 ...
- [转]Java 实现 POS 打印机无驱打印
来源:http://www.ibm.com/developerworks/cn/java/j-lo-pos/ Java 实现 POS 打印机无驱打印 文档选项 <tr valign=" ...
- Java 实现 POS 打印机无驱打印 【转】
Java 对硬件的控制一直以来都不是其强项,特别是打印,Java 很难实现对 POS 打印机的直接控制,并判断打印是否成功.本文将探讨一种方法,讲述如何使用 Java 技术与网口的 POS 打印机连接 ...
- java pos打印机_Java实现POS打印机自定义无驱打印
热敏打印机使用越来越广泛,而安装驱动相当复杂,万幸的是,几乎所有的热敏打印机都支持ESC/P指令,参考网络上一些资料后,在此整理了一份自定义打印的方案 • 打印模板为了增强打印效果的通用性,因此需要提 ...
- java socket 打印机_Java使用POS打印机(无驱)
使用原因:应项目要求,需要使用打印机,但是如果使用Windows驱动来实现打印,在某些条件下会发生网络堵塞等,而且没有提示,所以为了确保信息的完整,避免数据丢失.我们使用无驱打印(直接写端口的方法), ...
- 【利用树莓派制作无线打印服务器】
利用树莓派制作无线打印服务器 文章目录 利用树莓派制作无线打印服务器 一.树莓派是什么? 二.什么是CUPS 树莓派如何启用CUPS 三.电脑端如何连接树莓派打印服务器? 四.手机如何连接树莓派打印服 ...
- python程序语言和机器人控制-利用树莓派+Python语言制作一部机器人就是如此简单!...
前段时间,接触了一款在开源硬件界被称为是"人气之王"的树莓派(Raspberry Pi)袖珍计算机,功能强大的她拥有一颗SOC,集CPU.GPU.DSP和SDRAM为一体,以SD卡 ...
最新文章
- python自定义包或模块在Linux服务器导入错误的解决办法
- 实施项目--为什么开发人员一直在抱怨需求变动
- spawn-fcgi启动的一些报错问题
- Nginx可以做什么?看完这篇你就懂了
- LTM设备上ping不通网关
- dojo中的AMD模式开发案例
- java communiframe_[Java教程]javascript iframe相关操作
- C++笔记:select多路复用机制
- Docker安装Zookeeper并进行操作
- VMware vSphere 文档--总目录vSphere 5.5 6.0 6.5 6.7 7.0
- 怎么制作html静态页面,如何做静态网页
- 基于导频的信道估计实现
- 免费WiFi上网软件是什么?怎么用?
- java jsp 跳转_JSP页面跳转的五种方法
- 30行代码用python实现软件翻译
- 微信朋友圈,模仿微信朋友圈,朋友圈点赞评论
- ScriptX.cab与Smsx.cab打印代码
- 纽约大学研究生 计算机科学 申请,纽约大学计算机科学硕士排名第35(2020年TFE Times排名)...
- 《社交网站界面设计(原书第2版)》——2.3 沿着脚印铺路
- Linux系统下Kafka的搭建与启动