use*_*134 30 printing barcode web
我们正在尝试将条形码从网页打印到我们的Zebra打印机.
我想知道是否有办法使用打印机自己的字体打印它们,也许使用网络字体或者我知道使用的字体名称?
我一直在尝试使用php条形码生成器,它基本上生成包含条形码的图像.事实上,我已经尝试了几天,但没有成功.
问题是当我打印它们时扫描仪无法读取.我试图改变图像分辨率以匹配打印机的图像分辨率(203dpi),也尝试使用图像大小和格式进行播放,但打印后的条形码仍然无法扫描.
那么有人有这方面的经验吗?
打印机:Zebra TLP 2844
每页需要条形码:
===========
我已经取得了一些进展,我发现这台打印机支持EPL2语言,所以我试图用它来打印出条形码.
首先我需要启用传递模式,我在打印机选项>高级设置>杂项上执行了此操作.
现在我可以使用打印机的内置字体无可挑剔地打印条形码:D使用此命令:
ZPL:B10,10,0,1,2,2,60,N,"TEXT-GOES-HERE":ZPL
但是我只能用记事本打印它,我仍然无法从浏览器中打印出来......这可能是LF被CR + LF取代的问题......
如何克服这个问题?
===========
我正在尝试打印的标签实际上在条形码之前有一些文字,一些html表格很好地格式化.所以我需要首先打印它,在中间我需要粘贴一个漂亮的标签,然后再添加一些文本.
所以我不能用纯EPL2来打印整个东西,我想知道我是否可以使用html + EPL2 + html来实现我的目标或者是不允许的?= /
dma*_*tta 21
你遇到了一些障碍:
1)当您通过操作系统安装的打印机驱动程序进行打印时,打印机驱动程序正在尝试获取发送给它的数据并(重新)光栅化或缩放它以用于输出设备(Zebra打印机).由于打印机在203dpi时的分辨率相对较低,因此打印驱动程序不必花费太大的时间来缩放打印机,因为它会使条形码的质量失去一定的完整性.这就是为什么使用直接ZPL命令生成的条形码是多少更可靠.
2)由于Web浏览器通过不允许访问客户端计算机而有目的地提供安全性,因此您无法直接与客户端连接的打印机通信.此沙箱有助于保护用户免受恶意软件的侵害,因此恶意网站无法执行将文件写入客户端计算机或将输出直接发送到打印机等设备的操作.因此,您无法通过浏览器直接将ZPL命令发送到客户端连接的打印机.
但是,有一种方法可以按照您的描述进行操作.如果您对访问尝试打印到Zebra打印机的站点的客户端计算机有一定程度的控制,则所需的步骤通常才有用.例如,这只会由公司网络上的计算机使用,或者由愿意安装您需要编写的小型应用程序的客户使用.为此,您需要查看以下步骤:
A)您需要编写自己的自定义MIME类型.这基本上只是您要使用的任何名称,不会与任何已注册的MIME类型发生冲突.
B)接下来,您将定义一个文件扩展名,该扩展名将映射到您的自定义MIME类型.为此,您通常需要配置Web服务器(此步骤取决于您使用的Web服务器)以允许您要定义的新MIME类型以及用于这些类型文件的文件扩展名.
C)然后在您的Web应用程序上,当您想要输出ZPL数据时,使用映射到新MIME类型的文件扩展名将其写入文件.然后,一旦生成文件,您可以提供HTML链接,或将客户端浏览器重定向到该文件.此时,您可以通过手动将直接创建的文件复制到原始打印机端口来测试文件是否正常工作.
D)接下来,您需要编写一个可以安装在客户端上的小应用程序.安装应用程序后,您需要将其自身注册为自定义MIME类型的有效消费应用程序.如果浏览器检测到已安装的应用程序用于指定MIME类型的文件,它只是将该文件写入客户端计算机上的临时目录,然后尝试使用临时文件启动相同的已注册MIME类型的应用程序.应用程序的参数.因此,您的应用程序现在只读取浏览器传递给它的文件,然后尝试将其直接转储到打印机.
这是为了完成您所描述的内容而概述您需要执行的操作.某些具体步骤取决于您使用的Web服务器类型以及客户端所使用的操作系统.但这是高级概述,可以让您完成您的尝试.
小智 8
如果你考虑加载一个java applet,qz-print(以前的jzebra)可以完全按照你所描述的那样做,并且可以很好地与评论中提到的LP2844一起使用.
https://code.google.com/p/jzebra/
我们为我们的网络应用程序做了什么:
1) 下载免费的打印文件应用程序http://www.lerup.com/printfile/
"PrintFile 是一款免费的 MS Windows 实用程序,可让您快速轻松地打印文件。该程序识别纯文本、PostScript、Encapsulated PostScript (EPS) 和二进制格式。使用该程序可以为您节省大量纸张,从而也节约宝贵的自然资源。”
首次运行 PrintFile 时,进入高级选项并启用“直接发送到打印机”。
2) 在 Windows 中将 ZEBRA 打印机设置为通用文本打印机。
2) 在 web 应用程序中生成一个 file.prt 文件,它只是一个纯文本 EPL 文件。
3) 双击下载的文件将立即打印条码。奇迹般有效。您甚至可以设置 PrintFile,这样您甚至看不到 gui。
我正在使用QZ Tray将标签从网页打印到 Zebra 热敏打印机。
在demo/jsQZ Tray 文件夹中,有三个 JavaScript 文件需要与 QZ Tray 应用程序通信 - dependencies/rsvp-3.1.0.min.js、dependencies/sha-256.min.js和qz-tray.js.
在您的项目中包含这些 JavaScript 文件,如下所示:
<script type="text/javascript" src="/lib/qz-tray/rsvp-3.1.0.min.js"></script>
<script type="text/javascript" src="/lib/qz-tray/sha-256.min.js"></script>
<script type="text/javascript" src="/lib/qz-tray/qz-tray.js"></script>
Run Code Online (Sandbox Code Playgroud)
将标签打印到 Zebra 热敏打印机的最简单方法如下所示。
<script type="text/javascript">
qz.websocket.connect().then(function() {
// Pass the printer name into the next Promise
return qz.printers.find("zebra");
}).then(function(printer) {
// Create a default config for the found printer
var config = qz.configs.create(printer);
// Raw ZPL
var data = ['^XA^FO50,50^ADN,36,20^FDRAW ZPL EXAMPLE^FS^XZ'];
return qz.print(config, data);
}).catch(function(e) { console.error(e); });
</script>
Run Code Online (Sandbox Code Playgroud)
有关更多信息,请参阅如何将标签从网页打印到 Zebra 热敏打印机。
| 归档时间: |
|
| 查看次数: |
50430 次 |
| 最近记录: |