@Test public void testCanvasWithPrePostPad() throws Exception { final MasterReport report = new MasterReport(); report.setDataFactory(new TableDataFactory("query", new DefaultTableModel(10, 1))); report.setQuery("query"); final Band table = TableTestUtil.createTable(1, 1, 6, new CustomProducer()); table.getStyle().setStyleProperty(ElementStyleKeys.MIN_WIDTH, 200f); table.getStyle().setStyleProperty(ElementStyleKeys.POS_X, 100f); table.getStyle().setStyleProperty(ElementStyleKeys.POS_Y, 10f); table.setName("table"); report.getReportHeader().addElement(TableTestUtil.createDataItem("Pre-Padding", 100, 10)); report.getReportHeader().addElement(table); Element postPaddingItem = TableTestUtil.createDataItem("Post-Padding", 100, 10); postPaddingItem.getStyle().setStyleProperty(ElementStyleKeys.POS_X, 300f); report.getReportHeader().addElement(postPaddingItem); report.getReportHeader().setLayout("canvas"); PdfReportUtil.createPDF(report, "test-output/PRD-3857-output-canvas.pdf"); List<LogicalPageBox> pages = DebugReportRunner.layoutPages(report, 0, 1, 2); assertPageValid(pages, 0, StrictGeomUtility.toInternalValue(10)); assertPageValid(pages, 1); assertPageValid(pages, 2); }
public Element createDataItem(final String text, final int row, final int column) { if (text.startsWith("Head")) { return TableTestUtil.createDataItem(text, 100, 99); } Element dataItem = super.createDataItem(text, row, column); return dataItem; }
private Band createTable() { final Band tableCellA1 = TableTestUtil.createCell(TableTestUtil.createDataItem("Cell A1")); final Band tableCellA2 = TableTestUtil.createCell(TableTestUtil.createDataItem("Cell A2")); final Band tableCellB1 = TableTestUtil.createCell(TableTestUtil.createDataItem("Cell B1")); final Band tableCellB2 = TableTestUtil.createCell(TableTestUtil.createDataItem("Cell B2")); final Band tableCellC1 = TableTestUtil.createCell(TableTestUtil.createDataItem("Cell C1")); final Band tableCellC2 = TableTestUtil.createCell(TableTestUtil.createDataItem("Cell C2")); final Band tableRowA = TableTestUtil.createRow(tableCellA1, tableCellA2); final Band tableRowB = TableTestUtil.createRow(tableCellB1, tableCellB2); final Band tableRowC = TableTestUtil.createRow(tableCellC1, tableCellC2); final Band tableBody = new Band(); tableBody.getStyle().setStyleProperty(BandStyleKeys.LAYOUT, BandStyleKeys.LAYOUT_TABLE_BODY); tableBody.getStyle().setStyleProperty(ElementStyleKeys.MIN_WIDTH, -100f); tableBody.getStyle().setStyleProperty(ElementStyleKeys.MIN_HEIGHT, 150f); tableBody.addElement(tableRowA); tableBody.addElement(tableRowB); tableBody.addElement(tableRowC); final Band table = new Band(); table.getStyle().setStyleProperty(BandStyleKeys.LAYOUT, BandStyleKeys.LAYOUT_TABLE); table.getStyle().setStyleProperty(ElementStyleKeys.MIN_WIDTH, -100f); table.getStyle().setStyleProperty(ElementStyleKeys.MIN_HEIGHT, 200f); table.addElement(tableBody); return table; }
@Test public void testBlockWithPrePostPad() throws Exception { final MasterReport report = new MasterReport(); report.setDataFactory(new TableDataFactory("query", new DefaultTableModel(10, 1))); report.setQuery("query"); final Band table = TableTestUtil.createTable(1, 1, 6, true); table.setName("table"); report.getReportHeader().addElement(TableTestUtil.createDataItem("Pre-Padding", 100, 10)); report.getReportHeader().addElement(table); report.getReportHeader().addElement(TableTestUtil.createDataItem("Post-Padding", 100, 10)); report.getReportHeader().setLayout("block"); PdfReportUtil.createPDF(report, "test-output/PRD-3857-output-block.pdf"); List<LogicalPageBox> pages = DebugReportRunner.layoutPages(report, 0, 1, 2); assertPageValid(pages, 0, StrictGeomUtility.toInternalValue(10)); assertPageValid(pages, 1); assertPageValid(pages, 2); // assertPageValid(report, 3); // assertPageValid(report, 4); }
@Test public void testRowWithPrePostPad() throws Exception { final MasterReport report = new MasterReport(); report.setDataFactory(new TableDataFactory("query", new DefaultTableModel(10, 1))); report.setQuery("query"); final Band table = TableTestUtil.createTable(1, 1, 6, true); table.getStyle().setStyleProperty(ElementStyleKeys.MIN_WIDTH, 200f); table.setName("table"); report.getReportHeader().addElement(TableTestUtil.createDataItem("Pre-Padding", 100, 10)); report.getReportHeader().addElement(table); report.getReportHeader().addElement(TableTestUtil.createDataItem("Post-Padding", 100, 10)); report.getReportHeader().setLayout("row"); PdfReportUtil.createPDF(report, "test-output/PRD-3857-output-row.pdf"); List<LogicalPageBox> pages = DebugReportRunner.layoutPages(report, 0, 1, 2); assertPageValid(pages, 0); assertPageValid(pages, 1); assertPageValid(pages, 2); // assertPageValid(report, 3); // assertPageValid(report, 4); }
@Test public void testRunRowSpanReport() throws Exception { final MasterReport report = new MasterReport(); report.setDataFactory(new TableDataFactory("query", new DefaultTableModel(10, 1))); report.setQuery("query"); final Band table = TableTestUtil.createTable(1, 1, 6, true); final Band section = (Band) table.getElement(1); final Band row = (Band) section.getElement(0); final Band cell = TableTestUtil.createCell(6, 1); cell.addElement(TableTestUtil.createDataItem("Text", 100, 20)); row.addElement(0, cell); table.setName("table"); report.getReportHeader().addElement(table); report.getReportHeader().setLayout("block"); PdfReportUtil.createPDF(report, "test-output/PRD-3857-rowspan-output.pdf"); /* assertPageValid(report, 0); assertPageValid(report, 1); assertPageValid(report, 2); */ }