我正在使用qz- the (一种从浏览器打印的中间件,将打印机连接到客户机器的USB端口)来打印我的POS收据。我使用PostScriptPrinting生成接收器,对于PostScriptPrinting,我使用qz-tray的printHTML函数。我所了解的是,qz-tray使用java Html Renderer来渲染和生成printHTML函数的接收器。它在我的机器上运行得很好,但我客户的机器是macbook,而且他已经在上面安装了bootcamp windows。当我从macbook的bootcamp窗口生成打印时,接收器的格式受到干扰。这背后的原因是什么?我该如何解决这个问题?
发布于 2016-08-23 03:46:58
据我所知,qz-
使用java Html渲染器来渲染和生成printHTML函数的接收器。
正确的,QZ Tray 1.9使用了非常有限的内部Java HTML渲染器。
当我从macbook的bootcamp窗口生成打印时,接收器的格式受到干扰。这背后的原因是什么?我该如何解决这个问题?
可能是打印机驱动程序不同,这意味着您的答案需要更多信息(例如您正在使用哪种打印机和打印机驱动程序)。
例如,如果此收据打印机是Epson,则必须安装驱动程序,并且驱动程序设置会影响输出质量。爱普生提供MacOS,Linux和Windows的驱动程序。
此外,根据QZ托盘版本1.9、2.0、2.1等,Java 7 + HTML can have considerably different results over Java 8 + HTML。
无论如何,PostScript打印在QZ托盘的后续版本中已被弃用,因此使用最新版本应该会产生更好的效果。
var config = qz.configs.create("Printer Name");
var data = [{
type: 'html',
format: 'file', // or 'plain' if the data is raw HTML
data: 'assets/html_sample.html'
}];
qz.print(config, data).catch(function(e) { console.error(e); });要在热敏打印机上获得最佳的超文本标记语言质量,请使用QZ Tray 2.1 or higher is recommended。
https://stackoverflow.com/questions/36858393
复制相似问题