1

サイズ 64X24 MM サイズの Jasper レポートを作成しました。ジャスパー レポートを印刷するためのコードも作成しました。しかし、このコードを実行すると、jasper レポートが適切な形式で印刷されません。

そして、JasperReportViewer の [印刷] メニューを使用して印刷できる場合は、適切に印刷されます。しかし、私は JasperReportViewer を使用したくありません。ジャスパーレポートを直接プリンターに設定する必要があります。

私のコードは次のとおりです。

   JasperReport jasper_rep = JasperCompileManager.compileReport("c:\\report1.jrxml");
   JasperPrint jasper_print = JasperFillManager.fillReport(jasper_rep, parametersMap, con);
   JasperViewer.viewReport(jasper_print);
   PrinterJob job = PrinterJob.getPrinterJob();
   int selectedService = 0;
   selectedService = 0;
   PrintRequestAttributeSet printRequestAttributeSet = new HashPrintRequestAttributeSet();
   printRequestAttributeSet.add(OrientationRequested.PORTRAIT);
   printRequestAttributeSet.add(MediaSizeName.ISO_A0); 
   MediaSizeName mediaSizeName = MediaSize.findMedia(64,25,MediaPrintableArea.MM);
   printRequestAttributeSet.add(mediaSizeName);
   printRequestAttributeSet.add(new Copies(1));
   JRPrintServiceExporter exporter;
   exporter = new JRPrintServiceExporter();
   exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasper_print);
   exporter.setParameter(JRPrintServiceExporterParameter.PRINT_REQUEST_ATTRIBUTE_SET, printRequestAttributeSet);
   exporter.setParameter(JRPrintServiceExporterParameter.DISPLAY_PAGE_DIALOG, Boolean.FALSE);
   exporter.setParameter(JRPrintServiceExporterParameter.DISPLAY_PRINT_DIALOG, Boolean.TRUE);
   exporter.exportReport();
   job.print(printRequestAttributeSet);

しかし、それは適切な形式での印刷を提供しません。

4

1 に答える 1