此示例项目显示如何呈现报表并将其导出为各种格式。您可以使用超过15种格式进行导出,每种格式都可以设置。
首先,加载报表并向其添加Demo数据库。完成此操作后,呈现报表。
StiXmlDatabase xmlDatabase = new StiXmlDatabase("Demo", demoDir + "Demo.xsd", demoDir + "Demo.xml");
StiReport renderReport = StiSerializeManager.deserializeReport(new File("Reports/SimpleList.mrt"));
renderReport.getDictionary().getDatabases().add(xmlDatabase);
renderReport.render();
然后,根据格式,您可以使用默认导出设置导出报表。
outputStream = new FileOutputStream(stiFileChooser.getFile());
switch (format) {
case Pdf:
StiExportManager.exportPdf(report, outputStream);
break;
case Xps:
StiExportManager.exportXps(report, outputStream);
break;
case Html:
StiExportManager.exportHtml(report, outputStream);
break;
case Text:
StiExportManager.exportText(report, outputStream);
break;
case Rtf:
StiExportManager.exportRtf(report, outputStream);
break;
case Word2007:
StiExportManager.exportWord2007(report, outputStream);
break;
case Excel:
StiExportManager.exportExcel(report, outputStream);
break;
case ExcelXml:
StiExportManager.exportExcelXml(report, outputStream);
break;
case Excel2007:
StiExportManager.exportExcel2007(report, outputStream);
break;
case Csv:
StiExportManager.exportCsv(report, outputStream);
break;
case Xml:
StiExportManager.exportXml(report, outputStream);
break;
case Sylk:
StiExportManager.exportSylk(report, outputStream);
break;
case ImageBmp:
StiExportManager.exportImageBmp(report, outputStream);
break;
case ImageJpeg:
StiExportManager.exportImageJpeg(report, outputStream);
break;
case ImagePcx:
StiExportManager.exportImagePcx(report, outputStream);
break;
case ImagePng:
StiExportManager.exportImagePng(report, outputStream);
break;
case ImageSvg:
StiExportManager.exportImageSvg(report, outputStream);
break;
case ImageSvgz:
StiExportManager.exportImageSvgz(report, outputStream);
break;
}
您还可以自定义导出设置,例如导出为PDF。
StiPdfExportSettings pdfExportSettings = new StiPdfExportSettings();
pdfExportSettings.setAllowEditable(StiPdfAllowEditable.Yes);
pdfExportSettings.setPdfACompliance(true);
pdfExportSettings.setEmbeddedFonts(true);
pdfExportSettings.setPasswordInputUser("pass");
StiExportManager.exportPdf(report, pdfExportSettings, outputStream);