You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jasper报表打印至XP-80C收据打印机时左侧边距异常导致内容裁切的解决咨询

Jasper报表打印至XP-80C收据打印机时左侧边距异常导致内容裁切的解决咨询

我用Jasper报表设计了一款宽度76mm、高度动态适配内容的收据,设置了左右边距各1.7mm,上下边距各9mm。同时在XP-80C收据打印机的设置里,也选择了80(76)mm的纸张规格,但实际打印时,左侧莫名多出了很大的边距,导致收据右侧的内容被裁切,还偏移到了左侧区域(效果如图)。

以下是我用到的Java代码:

JasperCompileManager.compileReportToFile("KLMSale.jrxml", "KLMSale.jasper");
JasperReport jasperReport = (JasperReport) JRLoader.loadObjectFromFile("KLMSale.jasper");
Map<String, Object> parameters = new HashMap<>();
parameters.put("saleId", Integer.parseInt(jTextField1.getText()));
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, con);

// Print settings for 76mm paper
PrintRequestAttributeSet printRequestAttributeSet = new HashPrintRequestAttributeSet();
printRequestAttributeSet.add(new MediaPrintableArea(0, 0, 76, 350, MediaPrintableArea.MM)); // 76mm width
printRequestAttributeSet.add(new Copies(1));

// Export and Print
JRPrintServiceExporter exporter = new JRPrintServiceExporter();
exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
exporter.setParameter(JRPrintServiceExporterParameter.PRINT_SERVICE, receiptPrinter);
exporter.setParameter(JRPrintServiceExporterParameter.PRINT_REQUEST_ATTRIBUTE_SET, printRequestAttributeSet);
exporter.exportReport();

打印后的收据效果:
打印后的收据效果

请问我该怎么修正这个左侧边距的问题呢?

备注:内容来源于stack exchange,提问作者Vishakha Pol

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.14 11:33:13