正在寻找使用 RAW 端口 9100 从 php 网页打印到 zebra IP 打印机的正确代码。有谁知道这是否可行?我需要将 ZPL 格式输出的字符串直接发送到 ZM400 标签打印机。我到处搜索,找到的最接近的是:使用php直接打印到网络打印机
它看起来非常接近我所需要的,但是当我的 php 页面点击该代码时,它不会执行任何操作。这是我使用的代码:
<?php
$handle = printer_open('\\\\192.168.2.206:9100\\');
printer_set_option($handle, PRINTER_MODE, "RAW");
printer_write($handle, "TEXT To print");
printer_close($handle);
?>
我意识到这个问题有点老了,但我最近必须执行这个确切的任务,这就是我是如何做到的。
主服务器是基于云的 PHP 服务器,不在本地网络上。在本地网络上,我们有另一台机器只运行 WAMP 和此脚本,Zebra 打印机本身也在本地网络上,IP 为 192.168.1.201:
<?php
/*
* File Allows printing from web interface, simply connects to the Zebra Printer and then pumps data
* into it which gets printed out.
*/
$print_data = $_POST['zpl_data'];
// Open a telnet connection to the printer, then push all the data into it.
try
{
$fp=pfsockopen("192.168.1.201",9100);
fputs($fp,$print_data);
fclose($fp);
echo 'Successfully Printed';
}
catch (Exception $e)
{
echo 'Caught exception: ', $e->getMessage(), "\n";
}
然后,在云服务器生成的网页上,我们有一些代码,它只是向本地网络上的服务器执行 Ajax POST,发布到要打印的 zpl_data 中。
2017年编辑
我们现在已经将事情转移到通过 PrintNode 运行(https://www.printnode.com/)。到目前为止,我们发现它非常好,允许我们打印各种文档,而无需使用我们自己的代理,并且还提供一个白标安装程序,因此它看起来像我们自己的产品。我不隶属于 PrintNode。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)