List of usage examples for com.lowagie.text Table Table
public Table(Table t)
From source file:org.openswing.swing.export.java.ExportToRTF14.java
License:Open Source License
private void prepareGenericComponent(Table parentTable, int parentTableCols, Document document, ExportOptions exportOptions, ComponentExportOptions opt) throws Throwable { if (opt.getCellsContent() == null || opt.getCellsContent().length == 0) return;//from www. j a v a 2 s. c om int cols = opt.getCellsContent()[0].length; Object[] row = null; Object obj = null; SimpleDateFormat sdatf = new SimpleDateFormat(exportOptions.getDateTimeFormat()); int[] headerwidths = new int[cols]; for (int i = 0; i < headerwidths.length; i++) headerwidths[i] = (int) PageSize.A4.width() / cols; Table table = new Table(cols); table.setWidths(headerwidths); table.setBorderWidth(2); table.setBorderColor(Color.black); table.setGrayFill(exportOptions.getExportToRTFAdapter().getHeaderGrayFill()); table.setPadding(3); for (int i = 0; i < opt.getCellsContent().length; i++) { row = opt.getCellsContent()[i]; for (int j = 0; j < row.length; j++) { obj = row[j]; if (obj != null) { if (obj instanceof Date || obj instanceof java.util.Date || obj instanceof java.sql.Timestamp) { table.addCell(new Phrase(sdatf.format((java.util.Date) obj), (Font) exportOptions.getExportToRTFAdapter().getGenericComponentFont(i, j, obj))); } else { table.addCell(new Phrase(obj.toString(), (Font) exportOptions.getExportToRTFAdapter().getGenericComponentFont(i, j, obj))); } } else { table.addCell(new Phrase("", (Font) exportOptions.getExportToRTFAdapter().getGenericComponentFont(i, j, null))); } } } if (parentTable != null) { Cell c = new Cell(table); // c.setColspan(parentTableCols); parentTable.addCell(c); } else document.add(table); }
From source file:org.openswing.swing.export.java.ExportToRTF14.java
License:Open Source License
private void prepareGrid(Table parentTable, int parentTableCols, Document document, ExportOptions exportOptions, GridExportOptions opt) throws Throwable { // prepare vo getters methods... String methodName = null;/*from w ww . ja v a 2s . c om*/ String attributeName = null; Hashtable gettersMethods = new Hashtable(); Method[] voMethods = opt.getValueObjectType().getMethods(); for (int i = 0; i < voMethods.length; i++) { methodName = voMethods[i].getName(); if (methodName.startsWith("get")) { attributeName = methodName.substring(3, 4).toLowerCase() + methodName.substring(4); if (opt.getExportAttrColumns().contains(attributeName)) gettersMethods.put(attributeName, voMethods[i]); } } Response response = null; int start = 0; int rownum = 0; Object value = null; Object vo = null; int type; SimpleDateFormat sdf = new SimpleDateFormat(exportOptions.getDateFormat()); SimpleDateFormat sdatf = new SimpleDateFormat(exportOptions.getDateTimeFormat()); SimpleDateFormat stf = new SimpleDateFormat(exportOptions.getTimeFormat()); int headerwidths[] = new int[opt.getExportColumns().size()]; int total = 0; for (int i = 0; i < opt.getExportColumns().size(); i++) { headerwidths[i] = Math.max(opt.getExportColumns().get(i).toString().length() * 10, ((Integer) opt.getColumnsWidth().get(opt.getExportAttrColumns().get(i))).intValue()); total += headerwidths[i]; } // Document document = new Document(); // ByteArrayOutputStream baos = new ByteArrayOutputStream(); // RtfWriter2 w = RtfWriter2.getInstance(document,baos); // document.open(); Paragraph line = null; if (opt.getTitle() != null && !opt.getTitle().equals("")) { line = new Paragraph(opt.getTitle(), (Font) exportOptions.getExportToRTFAdapter().getFontTitle()); line.setAlignment(Element.ALIGN_CENTER); document.add(line); document.add(new Paragraph("")); } String[] filters = opt.getFilteringConditions(); if (filters != null) { for (int i = 0; i < filters.length; i++) { line = new Paragraph(filters[i]); document.add(line); } document.add(new Paragraph("")); } Table table = new Table(opt.getExportColumns().size()); table.setWidths(headerwidths); table.setBorderWidth(2); table.setBorderColor(Color.black); table.setGrayFill(exportOptions.getExportToRTFAdapter().getHeaderGrayFill()); table.setPadding(3); Phrase cell = null; for (int i = 0; i < opt.getExportColumns().size(); i++) { cell = new Phrase(opt.getExportColumns().get(i).toString(), (Font) exportOptions.getExportToRTFAdapter() .getHeaderFont(opt.getExportAttrColumns().get(i).toString())); table.addCell(cell); } // table.setHeaderRows(1); // table.getDefaultCell().setBorderWidth(1); // table.getDefaultCell().setHorizontalAlignment(Element.ALIGN_LEFT); // table.getDefaultCell().setVerticalAlignment(Element.ALIGN_TOP); for (int j = 0; j < opt.getTopRows().size(); j++) { // create a row for each top rows... vo = opt.getTopRows().get(j); appendRow(document, exportOptions, table, vo, opt, gettersMethods, sdf, sdatf, stf, j, 0); } do { response = opt.getGridDataLocator().loadData(GridParams.NEXT_BLOCK_ACTION, start, opt.getFilteredColumns(), opt.getCurrentSortedColumns(), opt.getCurrentSortedVersusColumns(), opt.getValueObjectType(), opt.getOtherGridParams()); if (response.isError()) throw new Exception(response.getErrorMessage()); boolean even = false; for (int j = 0; j < ((VOListResponse) response).getRows().size(); j++) { if (even) { even = false; } else { even = true; } vo = ((VOListResponse) response).getRows().get(j); appendRow(document, exportOptions, table, vo, opt, gettersMethods, sdf, sdatf, stf, rownum, 1); rownum++; } start = start + ((VOListResponse) response).getRows().size(); if (!((VOListResponse) response).isMoreRows()) break; } while (rownum < opt.getMaxRows()); for (int j = 0; j < opt.getBottomRows().size(); j++) { // create a row for each bottom rows... table.setGrayFill(exportOptions.getExportToRTFAdapter().getBottomRowsGrayFill(j)); vo = opt.getBottomRows().get(j); appendRow(document, exportOptions, table, vo, opt, gettersMethods, sdf, sdatf, stf, j, 2); } // rtfTable.importTable(table,total); if (parentTable != null) { Cell c = new Cell(table); // c.setColspan(parentTableCols); parentTable.addCell(c); // table.setCellsFitPage(true); // parentTable.insertTable(table,new Point(parentTable.getNextRow()+1,0)); } else document.add(table); // document.add(table); }
From source file:org.openswing.swing.export.java.ExportToRTF15.java
License:Open Source License
private void prepareGenericComponent(Table parentTable, int parentTableCols, Document document, ExportOptions exportOptions, ComponentExportOptions opt) throws Throwable { if (opt.getCellsContent() == null || opt.getCellsContent().length == 0) return;//from w w w.j a va 2s .com int cols = opt.getCellsContent()[0].length; Object[] row = null; Object obj = null; SimpleDateFormat sdatf = new SimpleDateFormat(exportOptions.getDateTimeFormat()); int[] headerwidths = new int[cols]; for (int i = 0; i < headerwidths.length; i++) headerwidths[i] = (int) PageSize.A4.getWidth() / cols; Table table = new Table(cols); table.setWidths(headerwidths); table.setBorderWidth(2); table.setBorderColor(Color.black); table.setGrayFill(exportOptions.getExportToRTFAdapter().getHeaderGrayFill()); table.setPadding(3); for (int i = 0; i < opt.getCellsContent().length; i++) { row = opt.getCellsContent()[i]; for (int j = 0; j < row.length; j++) { obj = row[j]; if (obj != null) { if (obj instanceof Date || obj instanceof java.util.Date || obj instanceof java.sql.Timestamp) { table.addCell(new Phrase(sdatf.format((java.util.Date) obj), (Font) (Font) exportOptions .getExportToRTFAdapter().getGenericComponentFont(i, j, obj))); } else { table.addCell(new Phrase(obj.toString(), (Font) exportOptions.getExportToRTFAdapter().getGenericComponentFont(i, j, obj))); } } else { table.addCell(new Phrase("", (Font) exportOptions.getExportToRTFAdapter().getGenericComponentFont(i, j, null))); } } } if (parentTable != null) { Cell c = new Cell(table); // c.setColspan(parentTableCols); parentTable.addCell(c); } else document.add(table); }
From source file:org.tpspencer.tal.mvc.document.DocumentWriterImpl.java
License:Apache License
public void startTable(String[] headings) { if (sections.size() == 0) throw new IllegalArgumentException("Cannot start a list if there is no section"); if (table != null) throw new IllegalArgumentException("Cannot nest a table in another table"); try {/* www . j a v a 2 s . c o m*/ table = new Table(headings.length); table.setPadding(2); table.setBorderColor(Color.GRAY); table.setBorderWidth(1); for (int i = 0; i < headings.length; i++) { Cell c = new Cell(new Phrase(getText(headings[i]), headingFont)); c.setUseAscender(true); c.setBackgroundColor(Color.DARK_GRAY); c.setVerticalAlignment(Element.ALIGN_MIDDLE); c.setHeader(true); table.addCell(c); } table.endHeaders(); } catch (Exception e) { throw new IllegalArgumentException("Error creating table", e); } }
From source file:pl.exsio.ca.app.report.terraincard.view.TerrainCardsView.java
License:Open Source License
private Element buildTable(TerrainCardPage page) throws Exception { Table table = new Table(this.viewModel.getTableColumnsNo() * 2); table.setBorderWidth(1);/*from w w w .ja va 2s . c o m*/ table.setPadding(1); table.setSpacing(1); table.setWidth(100); int currentCol = START_COL; int currentRow = START_ROW; for (int i = 0; i < page.getColumns().size(); i++) { TerrainCardColumn column = page.getColumns().get(i); table.addCell(this.getColumnTitleCell(column.getTerrainName()), 0, currentCol); table.addCell(this.getColumnDescCell("from"), 1, currentCol); table.addCell(this.getColumnDescCell("to"), 1, currentCol + 1); for (int j = 0; j < column.getCells().size(); j++) { TerrainCardCell cell = column.getCells().get(j); boolean odd = j % 2 != 0; table.addCell(this.getNotificationCell(cell.getGroup(), odd, 2), currentRow, currentCol); table.addCell(this.getNotificationCell(cell.getFrom(), odd, 1), currentRow + 1, currentCol); table.addCell(this.getNotificationCell(cell.getTo(), odd, 1), currentRow + 1, currentCol + 1); currentRow += 2; } currentCol += 2; currentRow = START_ROW; } return table; }
From source file:ro.nextreports.engine.exporter.RtfExporter.java
License:Apache License
private Table buildRtfTable(int type) throws DocumentException { List<Band> bands = new ArrayList<Band>(); if (type == 1) { bands.add(getReportLayout().getPageHeaderBand()); } else if (type == 2) { bands.add(getReportLayout().getPageFooterBand()); } else {/*from ww w .j a va2 s . c o m*/ bands = getReportLayout().getDocumentBands(); } int totalRows = 0; int totalColumns = 0; for (Band band : bands) { totalRows += band.getRowCount(); int cols = band.getColumnCount(); if (cols > totalColumns) { totalColumns = cols; } } // no page header or no page footer if (totalColumns == 0) { return null; } Table datatable = new Table(totalColumns); int[] headerwidths = new int[totalColumns]; // % int size = 100 / totalColumns; int totalWidth = 0; for (int i = 0; i < totalColumns; i++) { if (bean.getReportLayout().isUseSize()) { headerwidths[i] = bean.getReportLayout().getColumnsWidth().get(i); } else { headerwidths[i] = size; } totalWidth += headerwidths[i]; } if (bean.getReportLayout().isUseSize()) { float pixels = A4_PORTRAIT_PIXELS; if (bean.getReportLayout().getOrientation() == LANDSCAPE) { pixels = A4_LANDSCAPE_PIXELS; } float percentage = totalWidth * 100 / pixels; // do not allow to go outside an A4 frame if (percentage > 100) { percentage = 100; } if (!ReportLayout.CUSTOM.equals(bean.getReportLayout().getPageFormat())) { datatable.setWidth(percentage); } datatable.setWidths(headerwidths); } else { datatable.setWidth(100); } datatable.setPadding(2); if (type == PRINT_DOCUMENT) { writeHeader(datatable); } return datatable; }
From source file:se.idega.idegaweb.commune.school.report.business.ReportPDFWriter.java
License:Open Source License
private MemoryFileBuffer getPDFBuffer() throws DocumentException { MemoryFileBuffer buffer = new MemoryFileBuffer(); MemoryOutputStream mos = new MemoryOutputStream(buffer); Document document = new Document(PageSize.A4, 50, 50, 50, 50); PdfWriter writer = PdfWriter.getInstance(document, mos); String titleKey = this._reportModel.getReportTitleLocalizationKey(); String title = localize(titleKey, titleKey); this._normalFont = new Font(Font.HELVETICA, 7, Font.NORMAL); this._boldFont = new Font(Font.HELVETICA, 7, Font.BOLD); document.addTitle(title);// w ww. j a va 2s . c o m document.addAuthor("Agura IT Reports"); document.addSubject(title); document.open(); String dateString = new Date(System.currentTimeMillis()).toString(); document.add(new Phrase(title + " " + dateString + "\n\n", this._boldFont)); document.add(new Phrase("\n", this._boldFont)); int cols = this._reportModel.getColumnSize() + 1; Table table = new Table(cols); this._widths = new int[cols]; for (int i = 0; i < cols; i++) { this._widths[i] = 1; } table.setSpacing(1.5f); buildColumnHeaders(table); buildRowHeaders(table); buildReportCells(table); int totalWidth = 0; for (int i = 0; i < cols; i++) { this._widths[i] += 1; totalWidth += this._widths[i]; } int width = (100 * totalWidth) / 95; if (width > 100) { width = 100; } table.setWidth(width); table.setWidths(this._widths); document.add(table); document.close(); writer.setPdfVersion(PdfWriter.VERSION_1_2); return buffer; }