使用QZ Tray raw EPL命令打印指定尺寸PDF时标签对齐异常
QZ Tray 特定尺寸PDF标签打印对齐解决方案
方法1:PDF打印模式强制指定介质尺寸
别用像素打印,直接调用QZ Tray的PDF打印API,通过mediaSize参数强制锁定标签尺寸,彻底覆盖打印机默认配置:
- 代码示例:
var config = qz.configs.create('你的打印机名称', { mediaSize: { name: 'CUSTOM', width: 0.63, height: 11.81, unit: 'INCH' } }); qz.print(config, ['your-label.pdf']).catch(e => console.error(e));
- 核心:
mediaSize的name必须设为CUSTOM,尺寸和单位严格匹配你的标签(宽0.63英寸、长11.81英寸),这个参数会直接告诉QZ Tray和打印机使用自定义介质,不会再走默认逻辑。
方法2:转位图适配EPL打印
如果必须用EPL raw模式,别直接嵌入PDF,先把PDF转成和标签尺寸匹配的单色位图:
- 按打印机分辨率转换尺寸:比如203DPI的打印机,0.63英寸≈128像素,11.81英寸≈2397像素;300DPI则对应≈189像素和≈3543像素。
- 用EPL命令组合打印:
q128 // 设置标签宽度(像素) Q2397 // 设置标签长度(像素) GW0,0,128,2397,[位图二进制数据] // 在(0,0)位置打印位图 P1 // 打印1张
- 注意:位图必须是纯黑白单色图,否则EPL无法解析,转换时要保证分辨率和标签尺寸完全对应,避免拉伸偏移。
方法3:校准打印机介质传感器
热敏转印机的传感器没校准,会导致纸张定位错误,出现空白或内容溢出:
- 按打印机手册执行介质校准(通常是按住Feed键开机,或通过面板操作),让打印机识别当前标签的实际尺寸、间隙或黑标位置。
- 校准后再用QZ Tray打印,不管是PDF还是EPL模式,对齐精度都会明显提升。
方法4:检查PDF内部页面设置
别想当然认为PDF尺寸匹配,一定要确认:
- 用PDF阅读器查看文档属性,确认页面尺寸确实是0.63×11.81英寸,没有隐藏边距或缩放设置。
- 如果有边距,先在PDF编辑器里移除,确保内容完全填充页面后再打印。
内容的提问来源于stack exchange,提问作者Martie
相关产品推荐
相关产品推荐

