php printer_open 用法_php控制标签打印机(斑马)
一、环境准备
php环境:nginx+php5.5
安装php_printer扩展,下载地址:php_printer各版本扩展下载
64位的电脑选择php_printer-0.1.0-dev-5.5-nts-vc11-x64.zip
32位的电脑选择php_printer-0.1.0-dev-5.5-nts-vc11-x86.zip
斑马打印机
打印机驱动及ZebraDesigner 2软件
确保ZebraDesigner 2软件或excel软件可以打出条码
###二、php代码
1、上代码
//连接打印机,最好不要用局域网的连接方式,因为printer_write可能没权限
//局域网使用\\\\192.168.1.100\\ZDesigner GK888t (EPL)这样的方式连接
$handle = printer_open('ZDesigner GK888t (EPL)');
printer_set_option($handle, PRINTER_MODE, "RAW");
// printer_set_option($handle, PRINTER_ORIENTATION, PRINTER_ORIENTATION_LANDSCAPE);
printer_set_option($handle, PRINTER_PAPER_FORMAT, PRINTER_FORMAT_CUSTOM);
printer_set_option($handle,PRINTER_PAPER_WIDTH,40);//设置宽度
printer_set_option($handle,PRINTER_PAPER_LENGTH,30);//设置高度
$lfont = printer_create_font("Arial", 30,30, PRINTER_FW_BOLD, false, false, false, 0);
printer_select_font($handle, $lfont);
//打印机的条码打印指令,这个码哪里可以来的?从ZebraDesigner 2软件中可以获取到,或者你看文档也是有标明的。
$commands = "
I8,A,001
Q240,016
q831
rN
S3
D7
ZT
JF
OD
R255,0
f100
N
B311,202,2,1,3,9,108,B,\"123456789\"
P1
";
//打印指令要靠左边,不能有空格,并且是复制打印机生成的,只修改参数(上面123456789)部分。
printer_write($handle, $commands);
printer_delete_font($lfont);
printer_close($handle);
注意:如果指令不正确可能打不出来,或打印机没反应
2、调试代码
运行如果不行,可以试试文档里的其他函数,目的是走通代码到打印机,可以控制打印。我在这里遇到了一个问题,打印的时候总是打印2份,或者卡住。
三、调试打印机
也可以在写代码之前提前调试好
1. 打开控制面板->找到设备和打印机->找到打印机->右键打印机首选项
按照你的标签纸设置宽度高度等等
点击高级设置,选择打印机的类型,热感(加热打印)或热转(喷墨),翻开打印机,上面的滚筒里没有东西就是热感。
2. ZebraDesigner 2设置,设置并导出打印条码指令
1.新建文档
2.添加固定条码
把条码拉到画布中间并设置布局,最终结果如下:
3.导出打印条码指令
1.点击打印->勾选print to file->文件保存为txt
2.打开保存的txt,里面的内容就是打印条码指令,复制指令到代码里就行啦
祝你开发顺利
本文参考:https://www.cnblogs.com/skyfynn/p/5895703.html
php printer_open 用法_php控制标签打印机(斑马)相关推荐
- php printer_open 用法_php – 调用未定义的函数printer_open()
我试图通过此代码连接到另一台机器上的打印机 $handle = printer_open("\\\\xxx.xxx.xxx.xxx\\Canon MF4320-4350"); if ...
- php printer_open 用法_php程序怎么调用打印机
php程序怎么调用打印机 php控制打印机可以使用php_printer扩展实现. 一.配置 php运行环境正确安装(Apache|Nginx + PHP) 下载与php版本对应的php_printe ...
- php程序设计依赖注入_PHP控制反转和依赖注入
[TOC] PHP和依赖注入 理论知识 要了解控制反转( Inversion of Control ), 我觉得有必要先了解软件设计的一个重要思想:依赖倒置原则(Dependency Inversio ...
- 了解单片机及单片机的控制原理和 DX516 的用法,控制一个 LED 灯的亮
学习内容 单片机基本原理, 如何使用 DX516 仿真器, 如何编程点亮和灭掉一个 LED 灯, 如何进入 KEILC51uV, 调试环境, 如何使用单步,断点,全速,停止的调试方法. ------- ...
- php中oop类,phpOOP类的用法_PHP教程
php类的用法今天我们就php class用基本用法来讲述一下,首先要你明白什么是类:类的定义如下: 具有独特性,具有灵活性,具有通用性,重要性,这是等的定义了,更详细的内容各位到www.111cn. ...
- php中throw try,PHP的Try, throw 和 catch简单用法_PHP教程
PHP的Try, throw 和 catch简单用法 本文简单记录一下关于php中的 Try, throw 和 catch 的用法,后面有时间再做一个详细的解析. Try - 使用异常的函数应该位于 ...
- 一些特殊ACII码的用法 在控制台中覆盖显示、刷新显示和删除字符
很好奇怎么实现在控制台中不换行直接显示新的信息把旧的替换掉,于是找到了两个ACII码字符,他们可以帮助实现. 一个是'\b'字符,这个字符是backspace,即删除上一个字符,于是可以清除以显示的旧 ...
- php printer_open 用法_使用printer_write()函数直接从PHP打印
我发现直接从PHP打印代码: $printer = "cups-pdf"; $ph = printer_open($printer); if ($ph) { $content = ...
- C# e.Handled的用法,控制文本框键盘输入
e.Handled:获取或设置一个值,该值指示是否处理过此事件. e.Handled:多用在过滤某些事件,比如键盘按键 ①如要求文本框只能输入数字,那么当输入的是字母,则e.handled=true即 ...
最新文章
- .c/.cpp文件形成.exe文件的过程
- spring pojo_使用Spring将POJO公开为JMX MBean
- 数字图像的5种增强处理
- java.io.IOException: Too many open files错误解决方案
- 现在为什么不出翻盖手机了?
- oracle学用命令大全 笔记
- window 快捷键
- brother标签打印软件_标签打印软件如何调整字体高度
- Primer Premier 6.0 for Win 专业的引物设计
- oracle数据库卸载过程,oracle数据库卸载教程,Oracle卸载步骤有哪几步?
- 燕大学子知网使用手册
- IP协议及IPV4地址
- 《Android源码设计模式》之策略模式
- 阅读《迁移学习简明手册》总结(二)
- cfd-post 流线很少
- Java数据库篇之mysql VS postgresql
- 二维高斯核函数(python)
- matlab函数merge_MATLAB数据合并方法
- React兼容IE8
- 30个顶级Python库 | 用于深度学习、自然语言处理和计算机视觉