我有自己的Java应用程序,该应用程序使用Crystal Java运行时。我通过以下方式打印水晶报表:
reportClientDoc.getPrintOutputController().printReport( printOptions );
reportClientDoc是com.crystaldecisions.sdk.occa.report.application.ReportClientDocument实例。 我使用自定义纸张尺寸101.6x152.4毫米,因此在printOptions中设置了com.crystaldecisions.sdk.occa.report.document.PaperSize.useDefault。此尺寸也在我的打印机Zebra S4M 203dpi中设置。打印机不打印任何报告,报告出现在Windows假脱机中并消失。
我已经测试了A4和A3纸张尺寸,并且都可以正常工作,因为我可以在打印选项中设置PaperSize.paperA4或PaperSize.paperA5。使用自定义纸张尺寸时,我无法打印横向报告。
我尝试了多种配置。
我尝试以缇为单位设置UserPaperSize
PrintOutputController printCntrl = reportClientDoc.getPrintOutputController();
PaperOrientation paperOrientation = printCntrl.getPrintOptions().getPaperOrientation();
if( paperOrientation.equals( PaperOrientation.landscape ) )
{
printCntrl.modifyUserPaperSize( x_twips, y_twips );
}
else
{
printCntrl.modifyUserPaperSize( y_twips, x_twips );
}
我试图在页面设置中选中并取消选中“取消格式化页面尺寸和打印机纸张尺寸”复选框。我在页面设置中将方向设置为横向。
我的报告是从Crystal Reports 2016中正确打印的,但是我无法从我自己的使用Crystal Java运行时的应用程序中打印风景报告。
如何使用Crystal Java运行时以自定义纸张尺寸打印横向报告?