List of usage examples for com.lowagie.text Font UNDEFINED
int UNDEFINED
To view the source code for com.lowagie.text Font UNDEFINED.
Click Source Link
From source file:org.egov.works.web.actions.estimate.EstimatePDFGenerator.java
License:Open Source License
public void generatePDF() { try {// w w w. jav a 2 s. c om final Paragraph headerTextPara = new Paragraph( new Chunk(headerText, new Font(Font.UNDEFINED, LARGE_FONT, Font.BOLD))); String projectCode; final String oldEstNo = ""; HeaderFooter hf; headerTextPara.setAlignment(Element.ALIGN_CENTER); document.add(headerTextPara); document.add(makePara("Executing Department:" + estimate.getExecutingDepartment().getName(), Element.ALIGN_LEFT)); if (estimate.getUserDepartment() != null) document.add( makePara("User Department:" + estimate.getUserDepartment().getName(), Element.ALIGN_LEFT)); final CFinancialYear estimateFinancialYear = estimate.getMultiYearEstimates().get(0).getFinancialYear(); addZoneYearHeader(estimate, estimateFinancialYear); document.add(makePara("Name of Work: " + estimate.getName(), Element.ALIGN_LEFT)); document.add(makePara("Description: " + estimate.getDescription(), Element.ALIGN_LEFT)); if (estimate.getProjectCode() != null) { projectCode = "Project Code : " + estimate.getProjectCode().getCode(); document.add(makePara(projectCode, Element.ALIGN_LEFT)); hf = new HeaderFooter(new Phrase("\t \t \t \t \t \t \t \t \t \t \t \t \t \t \t" + "\t \t \t \t \t\t \t \t \t \t\t \t \t \t \t\t \t \t " + "\t \t \t \t \t\t \t \t \t \t" + headerText.concat("\n") .concat("\t \t \t \t \t \t \t \t \t \t" + "\t \t \t \t \t\t \t \t \t \t\t \t \t \t \t\t \t \t " + "\t \t \t \t \t\t \t \t \t \t ABSTRACT ESTIMATE") .concat("\n\n").concat("Name of Work: " + estimate.getName()).concat("\n") .concat("Description: " + estimate.getDescription()).concat("\n") .concat("Estimate Number: " + estimate.getEstimateNumber()).concat(oldEstNo) .concat("\n").concat(projectCode)), false); } else hf = new HeaderFooter(new Phrase("\t \t \t \t \t \t \t \t \t \t \t \t \t \t \t" + "\t \t \t \t \t\t \t \t \t \t\t \t \t \t \t\t \t \t " + "\t \t \t \t \t\t \t \t \t \t" + headerText.concat("\n") .concat("\t \t \t \t \t \t \t \t \t \t" + "\t \t \t \t \t\t \t \t \t \t\t \t \t \t \t\t \t \t " + "\t \t \t \t \t\t \t \t \t \t ABSTRACT ESTIMATE") .concat("\n\n").concat("Name of Work: " + estimate.getName()).concat("\n") .concat("Description: " + estimate.getDescription()).concat("\n") .concat("Estimate Number: " + estimate.getEstimateNumber()).concat(oldEstNo)), false); hf.disableBorderSide(Rectangle.TOP); hf.disableBorderSide(Rectangle.BOTTOM); hf.setLeft(Element.ALIGN_LEFT); document.setHeader(hf); final PdfPTable overheadsTable = createOverheadsTable(estimate); document.add(spacer()); document.add(overheadsTable); document.add(spacer()); final PdfPTable multiyearTable = createMultiYearTable(estimate); document.add(makePara("Year-wise Estimate")); document.add(spacer()); document.add(multiyearTable); document.add(spacer()); document.add(makePara("Estimate Created By: " + estimate.getCreatedBy().getName())); document.add(spacer()); document.add(spacer()); document.add(makePara("Checked By: ")); document.newPage(); addZoneYearHeaderWithOutEstimateNo(estimate, estimateFinancialYear); document.add(createActivitiesTable(estimate)); document.add(spacer()); final PdfPTable approvaldetailsTable = createApprovalDetailsTable(estimate); // TODO:Fixme - commented final out workflow history final details since ordering final of approval is final not // getting final listed properly /* * if (approvaldetailsTable.getRows().size() != 1) { document.add(makePara("Approval Details")); * document.add(spacer()); document.add(approvaldetailsTable); } */ final String appropriationNumber = abstractEstimateService .getLatestEstimateAppropriationNumber(estimate); if (isSkipBudgetCheck()) { final PdfPTable depositWorksAppropriationTable = createDepositAppropriationTable(estimate, appropriationNumber); if (depositWorksAppropriationTable.getRows().size() != 1) if (appropriationNumber != null) { document.newPage(); document.add(spacer()); document.add(makePara("Deposit Code Appropriation Details")); document.add(spacer()); document.add(depositWorksAppropriationTable); } } else { final PdfPTable BudgetaryAppropriationTable = createBudgetaryAppropriationTable(estimate, appropriationNumber); final String estimateNumber = estimate.getEstimateNumber(); if (BudgetaryAppropriationTable.getRows().size() != 1) if (!getBudgetDetailUsage(estimateNumber).isEmpty() && appropriationNumber != null) { document.newPage(); document.add(spacer()); document.add(makePara("Budgetary Appropriation")); document.add(spacer()); document.add(BudgetaryAppropriationTable); } } document.newPage(); document.add(spacer()); document.add(makePara( "EXECUTIVE ENGINEER'S OFFICE, ZONE.......................................................................", Element.ALIGN_LEFT)); document.add(spacer()); document.add(makePara( "Est No. Unit: Dept.", Element.ALIGN_LEFT)); document.add(spacer()); final Paragraph budgetheadTextPara = new Paragraph( new Chunk("BUDGET HEAD", new Font(Font.UNDEFINED, LARGE_FONT, Font.BOLD))); budgetheadTextPara.setAlignment(Element.ALIGN_CENTER); document.add(budgetheadTextPara); document.add(spacer()); document.add(makePara("____________________________________________________________________________", Element.ALIGN_LEFT)); document.add(makePara("Rs. ", Element.ALIGN_LEFT)); document.add(makePara("____________________________________________________________________________", Element.ALIGN_LEFT)); document.add(makePara("Works: ", Element.ALIGN_LEFT)); document.add(spacer()); document.add(spacer()); final Paragraph memoTextPara = new Paragraph( new Chunk("MEMO", new Font(Font.UNDEFINED, LARGE_FONT, Font.BOLD))); memoTextPara.setAlignment(Element.ALIGN_CENTER); document.add(memoTextPara); document.add(makePara("Budget Grant ", Element.ALIGN_LEFT)); document.add(makePara("Amount Appropriated:__________________________________________________________", Element.ALIGN_LEFT)); document.add(makePara("Balance on Hand: ", Element.ALIGN_LEFT)); document.add( makePara("Amount of this estimate_________________________________________________________", Element.ALIGN_LEFT)); document.add(makePara("Balance forward_______________________________________________________________", Element.ALIGN_LEFT)); document.add( makePara("Submitted for favour of sanction ", Element.ALIGN_LEFT)); document.add(spacer()); document.add(spacer()); document.add( makePara("A.E.E.Unit " + space1 + "\t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t" + "Exe.Eng.Zone.....................", Element.ALIGN_LEFT)); document.add(spacer()); document.add(makePara("Sanctioned", Element.ALIGN_CENTER)); document.add(spacer()); document.add(spacer()); document.add(makePara("DATE:" + space1 + "\t \t \t \t \t \t \t \t \t \t \t \t\t \t \t \t \t \t \t \t \t \t \t \t" + "Asst.Commissioner Zone...............", Element.ALIGN_LEFT)); document.add(spacer()); document.add(makePara( space1 + "\t \t \t \t \t \t \t \t \t \t \t \t\t \t \t \t \t \t \t \t \t \t \t \t" + "APPROPRIATION No.", Element.ALIGN_LEFT)); document.add(makePara(space1 + "\t \t \t \t \t \t \t \t \t \t \t \t" + "\t \t \t \t \t \t \t \t \t \t \t \t \t \t \t" + "Date:", Element.ALIGN_LEFT)); // WF for signature ----- if (approvaldetailsTable.getRows().size() != 1) if (shouldShowApprovalNumber) { document.resetHeader(); document.newPage(); document.add( makePara("\t \t \t \t \t \t \t \t \t \t \t \t \t \t \t" + "\t \t \t \t \t\t \t \t \t \t\t \t \t \t \t\t \t \t " + "\t \t \t \t \t\t \t \t \t \t" + headerText.concat("\n").concat("\t \t \t \t \t \t \t \t \t \t" + "\t \t \t \t \t\t \t \t \t \t\t \t \t \t \t\t \t \t " + "\t \t \t \t \t\t \t \t \t \t ABSTRACT ESTIMATE") .concat("\n\n"))); document.add( makePara( "File Current Number :" + space1 + "\t \t \t \t \t \t \t \t \t \t \t \t \t " + "Date: \t \t", Element.ALIGN_LEFT)); document.add(makePara(space1 + "\t \t \t \t \t \t \t \t \t \t \t \t\t \t \t \t \t \t \t \t \t \t \t " + "Department : ", Element.ALIGN_LEFT)); document.add(spacer()); final Paragraph headingPara1 = new Paragraph( new Chunk("NOTE FOR ADMINISTRATIVE SANCTION AS PER RULE 78 OF ", new Font(Font.UNDEFINED, LARGE_FONT, Font.BOLD))); headingPara1.setAlignment(Element.ALIGN_CENTER); document.add(headingPara1); final Paragraph headingPara2 = new Paragraph( new Chunk("MCMC ACT 1919 ", new Font(Font.UNDEFINED, LARGE_FONT, Font.BOLD))); headingPara2.setAlignment(Element.ALIGN_CENTER); document.add(headingPara2); document.add(spacer()); final PdfPTable estimateDetailsTable1 = createEstimateDetailsTable1(estimate); document.add(estimateDetailsTable1); final PdfPTable budgetDetailsTableFourCols = createBudgetDetailsForEstimateTable(estimate); document.add(budgetDetailsTableFourCols); final PdfPTable estimateDetailsTable2 = createBalanceAmtCalculationTable(estimate); document.add(estimateDetailsTable2); document.add(spacer()); final Paragraph endTextPara = new Paragraph( new Chunk("** END **", new Font(Font.UNDEFINED, LARGE_FONT, Font.BOLD))); endTextPara.setAlignment(Element.ALIGN_CENTER); document.add(endTextPara); } document.close(); } catch (final DocumentException e) { throw new ApplicationRuntimeException("estimate.pdf.error", e); } }
From source file:org.egov.works.web.actions.measurementbook.MeasurementBookPDFGenerator.java
License:Open Source License
public void generatePDF() { final String headerText = pdfLabel.get("mbpdf.header"); try {/* w w w . j a v a 2s .c om*/ // start header Part final Paragraph headerTextPara = new Paragraph( new Chunk(headerText, new Font(Font.UNDEFINED, LARGE_FONT, Font.BOLD))); headerTextPara.setAlignment(Element.ALIGN_CENTER); document.add(headerTextPara); document.add(spacer()); if (mbHeader != null) { String toPageno = ""; if (mbHeader.getToPageNo() == null || mbHeader.getToPageNo().intValue() == 0) toPageno = mbHeader.getFromPageNo().toString(); else toPageno = mbHeader.getToPageNo().toString(); document.add(makeParaWithFont(8, " \t \t \t \t \t " + pdfLabel.get("mbpdf.refno") + mbHeader.getMbRefNo() + " \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t " + pdfLabel.get("mbpdf.pageno") + " : " + mbHeader.getFromPageNo() + " to " + toPageno + " \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t " + pdfLabel.get("mbpdf.date") + sdf.format(mbHeader.getMbDate()), Element.ALIGN_LEFT)); } document.add(spacer()); includeRevisionTypeColumn = false; // /Find if revision type Non tendered and Lump sum items are there areNTOrLSItemsPresent(mbHeader); // creating label row PdfPTable mbTable = createMbTable(); if (mbHeader != null) mbTable = createMbData(mbTable, mbHeader); document.add(mbTable); document.add(spacer()); document.newPage(); // approval details table PdfPTable approvaldetailsTable = null; if (mbHeader != null) approvaldetailsTable = createApprovalDetailsTable(mbHeader); document.add(makePara(8, pdfLabel.get("mbpdf.approvaldetails"))); document.add(spacer()); document.add(approvaldetailsTable); document.close(); } catch (final DocumentException e) { throw new ApplicationRuntimeException(MEASUREMENTBOOK_PDF_ERROR, e); } }
From source file:org.egov.works.web.actions.tender.TenderNegotiationPDFGenerator.java
License:Open Source License
public void generatePDF() { nf = NumberFormat.getInstance(); nf.setMaximumFractionDigits(10);/* w w w. ja v a2 s .c o m*/ final List<String> tenderTypeList = worksService.getTendertypeList(); if (tenderTypeList != null && !tenderTypeList.isEmpty()) percTenderType = tenderTypeList.get(0); final String headerText = pdfLabel.get("tenderNegotiationpdf.header"); try { final Paragraph headerTextPara = new Paragraph( new Chunk(headerText, new Font(Font.UNDEFINED, LARGE_FONT, Font.BOLD))); headerTextPara.setAlignment(Element.ALIGN_CENTER); document.add(headerTextPara); document.add(makePara(cityName, Element.ALIGN_RIGHT)); if (tenderResponse != null && tenderResponse.getTenderEstimate() != null && tenderResponse.getTenderEstimate().getWorksPackage() != null) { worksPackgeReq = YES; worksPackage = tenderResponse.getTenderEstimate().getWorksPackage(); } String deptName = ""; if (YES.equalsIgnoreCase(worksPackgeReq)) { deptName = tenderResponse.getTenderEstimate().getWorksPackage().getDepartment().getName(); document.add(makePara(deptName, Element.ALIGN_RIGHT)); if (getWardList(worksPackage) != null) document.add(makePara( pdfLabel.get("tenderNegotiationpdf.ward") + "/" + pdfLabel.get("tenderNegotiationpdf.zone") + getWardList(worksPackage), Element.ALIGN_LEFT)); } else { if (tenderResponse != null && tenderResponse.getTenderEstimate() != null && tenderResponse.getTenderEstimate().getAbstractEstimate().getExecutingDepartment() != null && tenderResponse.getTenderEstimate().getAbstractEstimate().getExecutingDepartment() .getName() != null) deptName = tenderResponse.getTenderEstimate().getAbstractEstimate().getExecutingDepartment() .getName(); document.add(makePara(deptName, Element.ALIGN_RIGHT)); if (tenderResponse != null && tenderResponse.getTenderEstimate() != null && tenderResponse.getTenderEstimate().getAbstractEstimate().getWard().getParent() != null && tenderResponse.getTenderEstimate().getAbstractEstimate().getWard() != null) document.add(makePara(pdfLabel.get("tenderNegotiationpdf.ward") + "/" + pdfLabel.get("tenderNegotiationpdf.zone") + tenderResponse.getTenderEstimate().getAbstractEstimate().getWard().getName() + "/" + tenderResponse.getTenderEstimate().getAbstractEstimate().getWard().getParent() .getName(), Element.ALIGN_LEFT)); } if (YES.equalsIgnoreCase(worksPackgeReq)) document.add(makePara( pdfLabel.get("tenderNegotiationpdf.nameofwork") + tenderResponse.getTenderEstimate().getWorksPackage().getName(), Element.ALIGN_LEFT)); else if (tenderResponse != null && tenderResponse.getTenderEstimate() != null) document.add(makePara( pdfLabel.get("tenderNegotiationpdf.nameofwork") + tenderResponse.getTenderEstimate().getAbstractEstimate().getName(), Element.ALIGN_LEFT)); if (tenderResponse != null && tenderResponse.getTenderEstimate() != null && tenderResponse.getTenderEstimate().getTenderHeader() != null && tenderResponse.getTenderEstimate().getTenderHeader().getTenderNo() != null) document.add(makePara( pdfLabel.get("tenderNumber") + tenderResponse.getTenderEstimate().getTenderHeader().getTenderNo(), Element.ALIGN_LEFT)); if (tenderResponse != null && tenderResponse.getTenderEstimate() != null && tenderResponse.getTenderEstimate().getWorksPackage() != null) document.add(makePara( pdfLabel.get("tenderFileNo") + tenderResponse.getTenderEstimate().getWorksPackage().getTenderFileNumber(), Element.ALIGN_LEFT)); document.add(spacer()); String tenderDate = ""; if (tenderResponse != null && tenderResponse.getTenderEstimate() != null && tenderResponse.getTenderEstimate().getTenderHeader() != null && tenderResponse.getTenderEstimate().getTenderHeader().getTenderDate() != null) tenderDate = sdf.format(tenderResponse.getTenderEstimate().getTenderHeader().getTenderDate()); document.add( makePara(pdfLabel.get("tenderNegotiationpdf.tenderdate") + tenderDate, Element.ALIGN_RIGHT)); document.add(spacer()); PdfPTable contractorTable = null; if (tenderResponse != null) { contractorTable = createContractorTable(tenderResponse); document.add(contractorTable); } document.add(spacer()); if (tenderResponse != null && tenderResponse.getTenderEstimate().getTenderType().equalsIgnoreCase(percTenderType)) { PdfPTable negotiationTable = null; negotiationTable = createNegotiationTable(tenderResponse, tenderResponse.getTenderResponseContractors().get(0).getContractor()); document.add(negotiationTable); document.add(spacer()); if (negotiationTable != null && negotiationTable.getRows().size() > 8) document.newPage(); } else if (tenderResponse != null && !tenderResponse.getTenderEstimate().getTenderType().equalsIgnoreCase(percTenderType)) createNegotiationTableForContractors(tenderResponse); if (tenderResponse != null && tenderResponse.getNegotiationPreparedBy() != null && tenderResponse.getNegotiationPreparedBy().getEmployeeName() != null) document.add(makePara(pdfLabel.get("tenderNegotiationpdf.preparedby") + " " + tenderResponse.getNegotiationPreparedBy().getEmployeeName())); document.add(spacer()); document.add(spacer()); document.add(makePara(pdfLabel.get("tenderNegotiationpdf.checkedby"))); document.newPage(); PdfPTable approvaldetailsTable = null; if (tenderResponse != null) approvaldetailsTable = createApprovalDetailsTable(tenderResponse); if (approvaldetailsTable != null && approvaldetailsTable.getRows().size() != 1) { document.add(makePara(pdfLabel.get("tenderNegotiationpdf.approvaldetails"))); document.add(spacer()); document.add(approvaldetailsTable); } document.close(); } catch (final DocumentException e) { throw new ApplicationRuntimeException(TENDER_PDF_ERROR, e); } }
From source file:org.odftoolkit.odfdom.converter.internal.itext.StyleEngineForIText.java
License:Open Source License
public void visit(StyleTextPropertiesElement ele) { StyleTextProperties textProperties = currentStyle.getTextProperties(); if (textProperties == null) { textProperties = new StyleTextProperties(); currentStyle.setTextProperties(textProperties); }/* w ww. j a va 2s .c o m*/ // set font encoding from options textProperties.setFontEncoding(options.getFontEncoding()); // background-color String backgroundColor = ele.getFoBackgroundColorAttribute(); if (StringUtils.isNotEmpty(backgroundColor)) { textProperties.setBackgroundColor(ColorRegistry.getInstance().getColor(backgroundColor)); } // color String color = ele.getFoColorAttribute(); if (StringUtils.isNotEmpty(color)) { textProperties.setFontColor(ColorRegistry.getInstance().getColor(color)); } // font-family String fontFamily = ele.getFoFontFamilyAttribute(); if (StringUtils.isNotEmpty(fontFamily)) { textProperties.setFontName(fontFamily); } // font-name String fontName = ele.getStyleFontNameAttribute(); if (StringUtils.isNotEmpty(fontName)) { textProperties.setFontName(fontName); } // font-size String fontSize = ele.getFoFontSizeAttribute(); if (StringUtils.isNotEmpty(fontSize)) { if (ODFUtils.hasPercentUnit(fontSize)) { // relative if (textProperties.getFontSize() != Font.UNDEFINED) { textProperties .setFontSize(textProperties.getFontSize() * ODFUtils.getDimensionAsPoint(fontSize)); } } else { // absolute textProperties.setFontSize(ODFUtils.getDimensionAsPoint(fontSize)); } } // font-style String fontStyle = ele.getFoFontStyleAttribute(); if (StringUtils.isNotEmpty(fontStyle)) { if (FoFontStyleAttribute.Value.NORMAL.toString().equals(fontStyle)) { textProperties.setFontItalic(Boolean.FALSE); } else { // interpret other values as italic textProperties.setFontItalic(Boolean.TRUE); } } // font-variant String fontVariant = ele.getFoFontVariantAttribute(); if (StringUtils.isNotEmpty(fontVariant)) { } // font-weight String fontWeight = ele.getFoFontWeightAttribute(); if (StringUtils.isNotEmpty(fontWeight)) { if (FoFontWeightAttribute.Value.NORMAL.toString().equals(fontWeight)) { textProperties.setFontBold(Boolean.FALSE); } else { // interpret other values as bold textProperties.setFontBold(Boolean.TRUE); } } // text-underline-style String underlineStyle = ele.getStyleTextUnderlineStyleAttribute(); if (StringUtils.isNotEmpty(underlineStyle)) { if (StyleTextUnderlineStyleAttribute.Value.NONE.toString().equals(underlineStyle)) { textProperties.setFontUnderline(Boolean.FALSE); } else { // interpret other values as underline textProperties.setFontUnderline(Boolean.TRUE); } } // text-underline-type String underlineType = ele.getStyleTextUnderlineTypeAttribute(); if (StringUtils.isNotEmpty(underlineType)) { } // text-line-through-style String lineThroughStyle = ele.getStyleTextLineThroughStyleAttribute(); if (StringUtils.isNotEmpty(lineThroughStyle)) { if (StyleTextLineThroughStyleAttribute.Value.NONE.toString().equals(lineThroughStyle)) { textProperties.setFontStrikeThru(Boolean.FALSE); } else { // interpret other values as strike thru textProperties.setFontStrikeThru(Boolean.TRUE); } } super.visit(ele); }
From source file:org.odftoolkit.odfdom.converter.internal.itext.styles.StyleTextProperties.java
License:Open Source License
public void merge(StyleTextProperties textProperties) { if (textProperties.getBackgroundColor() != null) { backgroundColor = textProperties.getBackgroundColor(); }// w w w. j a v a 2s . c o m if (textProperties.getFontBold() != null) { fontBold = textProperties.getFontBold(); } if (textProperties.getFontColor() != null) { fontColor = textProperties.getFontColor(); } if (textProperties.getFontEncoding() != null) { fontEncoding = textProperties.getFontEncoding(); } if (textProperties.getFontItalic() != null) { fontItalic = textProperties.getFontItalic(); } if (textProperties.getFontName() != null) { fontName = textProperties.getFontName(); } if (textProperties.getFontSize() != Font.UNDEFINED) { fontSize = textProperties.getFontSize(); } if (textProperties.getFontStrikeThru() != null) { fontStrikeThru = textProperties.getFontStrikeThru(); } if (textProperties.getFontUnderline() != null) { fontUnderline = textProperties.getFontUnderline(); } }
From source file:org.oss.pdfreporter.font.FontManager.java
License:Open Source License
@Override IFontPeer getFontInternal(String fontname) { boolean embedded = false; String encoding = "CP1252"; if (loadedFonts.containsKey(fontname)) { Alias alias = loadedFonts.get(fontname); fontname = alias.getName();// ww w . j a v a 2 s .c o m encoding = alias.getEncoding(); embedded = alias.isEmbed(); } Font font; try { font = FontFactory.getFont(fontname, encoding, embedded, Font.UNDEFINED, Font.UNDEFINED, null); } catch (Exception e) { throw new RuntimeException("Unable to load Font: " + fontname + " with encoding: " + encoding, e); } if (font == null) { throw new RuntimeException("Font: " + fontname + " not found."); } return new FontPeer(font.getBaseFont()); }
From source file:org.webguitoolkit.ui.util.export.PDFTableExport.java
License:Apache License
/** * @param table/* ww w. j a v a 2s .c o m*/ * @param footer * @param header * @return */ public PdfPTable pdfExport(Table table) { TableExportOptions exportOptions = table.getExportOptions(); boolean showOnlyDisplayed = exportOptions.isShowOnlyDisplayedColumns(); Font headfont = new Font(Font.UNDEFINED, Font.DEFAULTSIZE, Font.BOLD); Font bodyfont = new Font(exportOptions.getPdfFontSize(), exportOptions.getPdfFontSize(), Font.NORMAL); if (exportOptions.getPdfFontColour() != null) { Color fontColor = exportOptions.getPdfFontColour(); bodyfont.setColor(fontColor); headfont.setColor(fontColor); } List<ITableColumn> columns = getTableColumns(showOnlyDisplayed, table); int columnCount = 0; for (int i = 0; i < columns.size(); i++) { TableColumn c = (TableColumn) columns.get(i); //hide select checkbox column if (!c.isExporatble()) continue; columnCount++; } PdfPTable resulttable = new PdfPTable(columnCount); resulttable.setWidthPercentage(100f); if (StringUtils.isNotEmpty(exportOptions.getTableHeadline())) { PdfPCell cell = new PdfPCell(new Paragraph(exportOptions.getTableHeadline())); cell.setColspan(columns.size()); cell.setBackgroundColor(Color.lightGray); resulttable.addCell(cell); } for (int i = 0; i < columns.size(); i++) { TableColumn c = (TableColumn) columns.get(i); // hide select checkbox column if (!c.isExporatble()) continue; String cellData = TextService.getString(c.getTitle()); if (cellData.contains("<br/>") || cellData.contains("<br>")) { cellData = cellData.replaceAll("<br\\/>", "\\/"); cellData = cellData.replaceAll("<br>", "\\/"); } PdfPCell cell = new PdfPCell(new Paragraph((cellData), headfont)); cell.setBackgroundColor(Color.lightGray); resulttable.addCell(cell); } List tabledata = table.getDefaultModel().getFilteredList(); if (tabledata.isEmpty()) { for (int i = 0; i < columns.size(); i++) { resulttable.addCell(new PdfPCell((new Phrase("")))); } } for (Iterator it = tabledata.iterator(); it.hasNext();) { DataBag dbag = (DataBag) it.next(); for (int i = 0; i < columns.size(); i++) { TableColumn tableColumn = (TableColumn) columns.get(i); if (!tableColumn.isExporatble()) continue; logger.debug("property: " + tableColumn.getProperty()); IColumnRenderer renderer = tableColumn.getRenderer(); Converter converter = tableColumn.getConverter(); addObjectCell(bodyfont, resulttable, dbag, tableColumn, renderer, converter); } } if (StringUtils.isNotEmpty(exportOptions.getTableFooter())) { PdfPCell cell = new PdfPCell(new Paragraph(exportOptions.getTableFooter())); cell.setColspan(columnCount); cell.setBackgroundColor(Color.lightGray); resulttable.addCell(cell); } resulttable.setHeaderRows(1); return resulttable; }
From source file:org.webguitoolkit.ui.util.export.PDFTableExport.java
License:Apache License
public void writeTo(Table table, OutputStream out) { TableExportOptions exportOptions = table.getExportOptions(); ByteArrayOutputStream baos = new ByteArrayOutputStream(); // set the page orientation Din-A4 Portrait or Landscape Rectangle page = PageSize.A4; if (exportOptions.getPdfPosition() != null && exportOptions.getPdfPosition().equals(TableExportOptions.PDF_LANDSCAPE)) { // landscape position page = PageSize.A4.rotate();/*from w ww .ja v a 2s. c o m*/ } else if (exportOptions.getPdfPosition() != null && exportOptions.getPdfPosition().equals(TableExportOptions.PDF_PORTRAIT)) { // portrait position page = PageSize.A4; } if (exportOptions.getPdfPageColour() != null) { // page.setBackgroundColor(exportOptions.getPdfPageColour()); } Document document = new Document(page); document.setMargins(36f, 36f, 50f, 40f); try { PdfWriter writer = PdfWriter.getInstance(document, baos); writer.setPageEvent(new PDFEvent(table)); document.open(); if (StringUtils.isNotEmpty(exportOptions.getHeadline())) { Font titleFont = new Font(Font.UNDEFINED, 18, Font.BOLD); Paragraph paragraph = new Paragraph(exportOptions.getHeadline(), titleFont); paragraph.setAlignment(Element.ALIGN_CENTER); document.add(paragraph); document.add(new Paragraph(" ")); document.add(new Paragraph(" ")); } PdfPTable pdftable = pdfExport(table); document.add(pdftable); document.newPage(); document.close(); baos.writeTo(out); out.flush(); baos.close(); } catch (DocumentException e) { logger.error("Error creating document!", e); throw new RuntimeException(e); } catch (IOException e) { logger.error("Error creating document!", e); throw new RuntimeException(e); } finally { } }