树莓派3下Python调用斑马GK888t打印机
来源:互联网 发布:java培训机构比较好 编辑:程序博客网 时间:2024/05/19 23:58
折腾了几天终于初有收获。继去年的三无温控探头之后,海爷又支援了他珍藏的斑马打印机。结合之前的研究成果,这下终于可以尝试用树莓派实现自助打印的业务模式了。
首先当然是通过USB物理连接打印机到树莓派3上。用lsusb命令看一下USB的设备,应该能看到一条类似于“Bus 001 Device 006: ID 0a5f:00c9 Zebra”的记录。然后就该装“驱动”了。和Windows不同,Raspbian下装打印机“驱动”可以通过CUPS安装。
参考这篇文档: http://www.howtogeek.com/169679/how-to-add-a-printer-to-your-raspberry-pi-or-other-linux-computer/
这里仅简要记录几个核心步骤:
sudo apt-get install cups #安装CUPS
sudo usermod -a -G lpadmin pi #假设你正在使用默认的pi账号。将pi账号作为管理账号。一会儿会用到。
然后修改配置文件 /etc/cups/cupsd.conf:
找到:
# Only listen for connections from the local machine
Listen localhost:631
改成:
# Only listen for connections from the local machine
# Listen localhost:631
Port 631
然后在下面几节中添加“Allow @local”,以下是改完后的样子:
< Location / >
# Restrict access to the server...
Order allow,deny
Allow @local
< /Location >
< Location /admin >
# Restrict access to the admin pages...
Order allow,deny
Allow @local
< /Location >
< Location /admin/conf >
AuthType Default
Require user @SYSTEM
# Restrict access to the configuration files...
Order allow,deny
Allow @local
< /Location >
接着重启服务。
sudo /etc/init.d/cups restart
然后就可以登录 http://《树莓派IP地址》:631添加打印机了。
第一次进去后按“Administration”页。需要登录就用你的pi账号。
接下来就按部就班的添加打印机,这里就不多啰嗦了。有个实用的选项就是共享,拿树莓派改造打印机为无线网络打印机就靠它了,回头我也试下。CUPS支持Zebra。我的被自动识别为Zebra Technologies ZTC GK888t (EPL) ,实际选择的是EPL2,不然打印不了。
设置默认纸张可以在设置完之后进行。切换到“Printers”页,选中需要的打印机的超链接。这时候左上角有两个下拉框,保持左边的Maintenance不动,右边的那个选Set Default Options即可。分辨率不要黑心,照实选,不然打印出来的效果会吐血的。
我选了Custom,宽度4高度3(与标签保持一致),单位厘米,分辨率203dpi,媒体类型为打印机默认。记得按下“Set Default Option”按钮。
至此打印机设置完成。
为了让python可以使用它,先sudo apt-get python-cups。当然这个不是唯一选择,但至少对我来说试下来这个最不折腾。
示例代码如下:
#! /usr/bin/env pythonimport cups import timeimport subprocessconn = cups.Connection()printers = conn.getPrinters()printer_name = printers.keys()[0]printerQueueLen = len(conn.getJobs())if (printerQueueLen <= 1): time.sleep(1) printID = conn.printFile(printer_name,'/home/pi/src/pi_logo.png','ki',{'fit-to-page':'False','orientation-requested':'3'})
最后一个参数是打印的option,可惜我没找到太完整的参考说明,只能用到时现搜了。谁有也请告知下。
(那些特别大的就是参数为空({})的效果,貌似默认是fit-to-page的)
- 树莓派3下Python调用斑马GK888t打印机
- 斑马GK888T打印机跑纸(打印半张以及闪红灯)解决办法
- GK888t打印机设置
- 斑马打印机指令集
- 斑马打印机 password 处理
- 斑马打印机打印图片
- C#调用斑马打印机打印条码标签(支持COM/LPT/USB/ZPL/EPL/Bitmap)
- C#调用斑马打印机打印条码标签(支持COM/LPT/USB/ZPL/EPL/Bitmap)
- C#调用斑马打印机打印条码标签(支持COM/LPT/USB/ZPL/EPL/Bitmap)
- 斑马ZM40条码打印机仅7K3
- 便携式斑马打印机条码控件ThermalLabel SDK
- 碰到斑马打印机下载字体问题
- C#通过并口连接斑马打印机
- 斑马打印机打印图片核心代码
- C#调用斑马打印机打印条码标签(支持COM、LPT、USB、TCP连接方式和ZPL、EPL、CPCL指令)
- C#调用斑马打印机打印条码标签(支持COM、LPT、USB、TCP连接方式和ZPL、EPL、CPCL指令)
- C#调用斑马打印机打印条码标签(支持COM、LPT、USB、TCP连接方式和ZPL、EPL、CPCL指令)
- C#调用斑马打印机打印条码标签(支持COM、LPT、USB、TCP连接方式和ZPL、EPL、CPCL指令)
- 敲题模板
- 2017.1.24
- MySql
- Fragment的使用
- 数数小木块
- 树莓派3下Python调用斑马GK888t打印机
- Activity的启动模式
- 《C#精彩实例教程》小组阅读12 -- C#面向对象技术高级应用
- 那些重要却容易被忽视的用户体验(四)
- 基于python的火车票查询工具
- 【算法】程序猿不写代码是不对的10
- JS中如何输出空格
- android studio快捷键大全
- 目录:IDE的使用