我一直在尝试使用 JasperReports 以高于 72dpi 的分辨率打印,但没有成功。
我需要使用高于 72dpi 的分辨率,因为我要打印那些预先格式化的不干胶标签,这些标签在设置位置时需要一定的精度。但是,由于 JasperReports 只能使用像素,而 AFAIK 仅支持 72dpi 配置,我无法正确设置边距、间距等。
例如,当你需要1mm的配置时,你需要转换为像素,这将是iReport自动转换的3px(实际上,实际值是~3.78px,但像素不能是十进制,iReport会截断而不是四舍五入它)。但是,当您将其计算回 mm 时(例如,当您打印时),它实际上得到的尺寸约为 0.79mm,而不是您需要的旧 1mm。如果考虑圆形值(4px 而不是 3px),您的最终打印值约为 1.06mm,仍然是错误的。
即使您认为 0.06mm 或 0.21mm 没有什么价值,但实际上当您有 20 个或更多测序标签时,它才是有价值的,并且随着标签数量的增加,这种误差范围会变得更大。
最后,有什么方法可以使用 JasperReports 打印具有军事精度的报告,或者是否有解决此问题的方法?