List of usage examples for com.lowagie.text Rectangle TOP
int TOP
To view the source code for com.lowagie.text Rectangle TOP.
Click Source Link
Rectangle
. From source file:com.sinkluge.reports.contracts.GenSubcontract.java
public void create(Info in, Image toplogo) throws Exception { //for the unchecked box Image checkbox = Image.getInstance(in.path + "/WEB-INF/images/unchecked.jpg"); Chunk ch2 = new Chunk(checkbox, -7, -7); Phrase checkboxPhrase = new Phrase(); checkboxPhrase.add(ch2);/*from www .j ava 2 s . c om*/ Font tnr8 = new Font(Font.TIMES_ROMAN, 8, Font.NORMAL); Image iBox = Image.getInstance(in.path + "/WEB-INF/images/initialsBox.jpg");//(in.path + "/jsp/dev/images/epcologo3.jpg"); Chunk ch3 = new Chunk(iBox, -3, -3); Phrase initialsBoxPhrase = new Phrase(); initialsBoxPhrase.add(ch3); Phrase footerPhrase = new Phrase( attr.get("full_name") + ", " + attr.get("address") + ", " + attr.get("city") + ", " + attr.get("state") + " " + attr.get("zip") + "\nPhone: " + attr.get("phone") + " Fax: " + attr.get("fax") + " " + attr.get("url") + " Page: ", new Font(Font.TIMES_ROMAN, 7, Font.BOLD | Font.ITALIC)); HeaderFooter footer = new HeaderFooter(footerPhrase, true); footer.setBorder(0); footer.setAlignment(Element.ALIGN_CENTER); init(40, 40, 40, 40, footer); Phrase underLinePhrase = new Phrase( " ___________________________________________________________________________________________ ", new Font(Font.TIMES_ROMAN, 10, Font.BOLD)); int[] twoC = { 30, 70 }; int[] twoD = { 5, 95 }; int[] twoF = { 10, 90 }; int[] twoE = { 25, 75 }; int[] twoG = { 40, 60 }; int[] threeD = { 4, 11, 85 }; int[] threeB = { 70, 15, 15 }; //int[] threeC = { 47, 5, 48 }; int[] five = { 18, 25, 14, 18, 25 }; //blank spacer for keeping tables apart Table spacer = new Table(1, 1); spacer.setBorderWidth(0); //spacer.setDefaultCellBorderWidth(0); spacer.setWidth(100); spacer.setPadding(0); spacer.setSpacing(0); Cell blank = new Cell(); blank.add(new Chunk("", new Font(Font.TIMES_ROMAN, 8, Font.BOLD, new Color(255, 255, 255)))); blank.setBorderWidth(0); //blank.setLeading(0); spacer.addCell(blank); //start of document //document.setFooter(footer); //document.setFooter(footer); //add image Phrase p1 = new Phrase(); Table table1 = new Table(1, 1); table1.setBorderWidth(0); table1.setWidth(100); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(2); table1.setSpacing(2); toplogo.scalePercent(20); //Chunk ch1=new Chunk(toplogo, -36, -55); //p1.add(ch1); Cell cell = new Cell(toplogo); cell.setBorderWidth(0); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); table1.addCell(cell); document.add(table1); document.add(spacer); document.add(spacer); document.add(spacer); document.add(spacer); document.add(spacer); document.add(spacer); document.add(spacer); document.add(spacer); document.add(spacer); document.add(spacer); table1 = new Table(1, 1); table1.setBorderWidth(0); table1.setWidth(100); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(0); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.setLeading(19); cell.add( new Phrase(title.toUpperCase() + " AGREEMENT BETWEEN CONTRACTOR AND " + cTitle.toUpperCase() + "\n", new Font(Font.TIMES_ROMAN, 20, Font.BOLD))); cell.setUseDescender(true); cell.setBackgroundColor(Color.lightGray); cell.setBorder(0); table1.addCell(cell); document.add(table1); table1 = new Table(1, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(0); table1.setSpacing(0); cell = new Cell(); cell.add(underLinePhrase); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("\nDOCUMENTS CONTAINED HEREIN:\n", new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); document.add(table1); table1 = new Table(3, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setWidths(threeD); table1.setPadding(0); table1.setSpacing(0); table1.addCell(blank); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("Page 1", new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("Agreement Declaration", new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.add(new Phrase(" Initial boxes below to indicate complete review of this agreement.", new Font(Font.TIMES_ROMAN, 8, Font.ITALIC))); cell.setBorder(0); table1.addCell(cell); table1.addCell(blank); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("Page 2", new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("Articles of " + title + " Agreement and Standard Provisions", tnr8)); cell.add(new Phrase(" Sign the concluding page.", new Font(Font.TIMES_ROMAN, 8, Font.ITALIC))); cell.setBorder(0); table1.addCell(cell); table1.addCell(blank); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("Exhibit \"A\"", new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("List of Contract Documents, Plans, Specifications, Etc.", tnr8)); cell.setBorder(0); //cell.add(new Phrase(" Read and initial each page.", new Font(Font.TIMES_ROMAN, 8, Font.ITALIC))); table1.addCell(cell); table1.addCell(blank); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("Exhibit \"B\"", new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase(cTitle + "'s Scope of Work", new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); table1.addCell(blank); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("Exhibit \"C\"", new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase(cTitle + "'s Special Provisions and Procedure Requirements", tnr8)); cell.add(new Phrase(" Read and complete \"Release Authorization\" information.", new Font(Font.TIMES_ROMAN, 8, Font.ITALIC))); cell.setBorder(0); table1.addCell(cell); table1.addCell(blank); if (insure) { cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("Exhibit \"D\"", new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase(cTitle + " Cost Breakdown", new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.add(new Phrase(" Complete and return with signed contract", new Font(Font.TIMES_ROMAN, 8, Font.ITALIC))); cell.setBorder(0); table1.addCell(cell); table1.addCell(blank); } cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.setColspan(2); cell.add(new Phrase("NOTE OTHERS HERE:", new Font(Font.TIMES_ROMAN, 8, Font.ITALIC))); cell.setBorder(0); table1.addCell(cell); document.add(table1); table1 = new Table(3); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(0); table1.setWidths(threeB); table1.addCell(blank); cell = new Cell(); cell.setColspan(2); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("(Initial) Entire agreement thoroughly reviewed:\n", new Font(Font.TIMES_ROMAN, 6, Font.ITALIC))); cell.setBorder(0); table1.addCell(cell); table1.addCell(blank); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("Contractor: ________", new Font(Font.TIMES_ROMAN, 6, Font.ITALIC))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase(cTitle + ": ________", new Font(Font.TIMES_ROMAN, 6, Font.ITALIC))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setColspan(3); cell.add(underLinePhrase); cell.setBorder(0); table1.addCell(cell); document.add(table1); table1 = new Table(1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(0); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("AGREEMENT", new Font(Font.TIMES_ROMAN, 10, Font.BOLD))); cell.add(new Phrase(" made as of " + agreementDate, new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); //cell.setLeading(10); cell.add(new Phrase("BETWEEN", new Font(Font.TIMES_ROMAN, 10, Font.BOLD))); cell.add(new Phrase(" the Contractor: \n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.add(new Phrase(" " + attr.get("full_name") + " \n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.add(new Phrase(" " + attr.get("address") + " \n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.add(new Phrase(" " + attr.get("city") + ", " + attr.get("state") + " " + attr.get("zip"), new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.add(new Phrase(" (hereinafter known as \"Contractor\")\n", new Font(Font.TIMES_ROMAN, 6, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); //cell.setLeading(10); cell.add(new Phrase("AND", new Font(Font.TIMES_ROMAN, 10, Font.BOLD))); cell.add(new Phrase(" the " + cTitle + ": \n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.add(new Phrase(" " + subName + " \n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.add(new Phrase(" " + subAddress + "\n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.add(new Phrase(" " + subCityStateZip, new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.add(new Phrase(" (hereinafter known as \"" + cTitle + "\")\n", new Font(Font.TIMES_ROMAN, 6, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); //cell.setLeading(10); cell.add(new Phrase("FOR", new Font(Font.TIMES_ROMAN, 10, Font.BOLD))); cell.add(new Phrase(" the the fixed sum of " + DocHelper.numberAndText(amount) + " \n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); //cell.add(new Phrase(" " + amountString + " \n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); //cell.setLeading(10); cell.add(new Phrase("FOR", new Font(Font.TIMES_ROMAN, 10, Font.BOLD))); cell.add(new Phrase(" the Project known as:\n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.add(new Phrase(" " + projectName + " \n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.add(new Phrase(" " + projectAddress + "\n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.add(new Phrase(" " + projectCityStateZip, new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.add(new Phrase(" (hereinafter known as \"Project\")\n", new Font(Font.TIMES_ROMAN, 6, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); //cell.setLeading(10); cell.add(new Phrase("BY", new Font(Font.TIMES_ROMAN, 10, Font.BOLD))); cell.add(new Phrase(" the Architect:\n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.add(new Phrase(" " + architectName + " \n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.add(new Phrase(" " + architectAddress + "\n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.add(new Phrase(" " + architectCityStateZip, new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.add(new Phrase(" (hereinafter known as \"Architect\")\n", new Font(Font.TIMES_ROMAN, 6, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); //cell.setLeading(10); cell.add(new Phrase("FOR", new Font(Font.TIMES_ROMAN, 10, Font.BOLD))); cell.add(new Phrase(" the Project owner:\n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.add(new Phrase(" " + ownerName + " \n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.add(new Phrase(" " + ownerAddress + "\n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.add(new Phrase(" " + ownerCityStateZip, new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.add(new Phrase(" (hereinafter known as \"Owner\")\n", new Font(Font.TIMES_ROMAN, 6, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("WHEREFORE", new Font(Font.TIMES_ROMAN, 10, Font.BOLD))); cell.add(new Phrase(" the Contractor and " + cTitle + " agree as follows:\n\n\n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); document.add(table1); /* table1 = new Table(1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(0); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); //cell.add(new Phrase("\n", new Font(Font.TIMES_ROMAN, 6, Font.NORMAL))); cell.setBorder(Rectangle.BOTTOM | Rectangle.TOP); cell.setBorderWidth(1.1f); cell.add(footerPhrase); cell.add(new Phrase(" 1\n ", new Font(Font.TIMES_ROMAN, 6, Font.NORMAL))); //cell.add(footerPhrase2); cell.setBorder(0); table1.addCell(cell); document.add(table1); */ document.newPage(); table1 = new Table(1, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(3); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.add(new Phrase(title.toUpperCase() + " AGREEMENT\n", new Font(Font.TIMES_ROMAN, 20, Font.BOLD))); cell.setBackgroundColor(Color.lightGray); cell.setLeading(19); cell.setUseDescender(true); cell.setBorder(0); table1.addCell(cell); document.add(table1); Paragraph para = new Paragraph(8, "\n\n" + text.toString(), tnr8); document.add(para); Phrase p; document.add(spacer); table1 = new Table(2, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setWidths(twoC); table1.setPadding(0); p = new Phrase("Date:\n\n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL)); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(p); cell.setBorder(0); table1.addCell(cell); p = new Phrase("Signed:\n\n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL)); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(p); cell.setBorder(0); table1.addCell(cell); p = new Phrase("_______________________", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL)); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(p); cell.setBorder(0); table1.addCell(cell); p = new Phrase("_________________________________________________________________", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL)); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(p); cell.setBorder(0); table1.addCell(cell); table1.addCell(blank); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase(" General Contractor Title\n", tnr8)); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.setColspan(2); cell.add(new Phrase("\nThis " + title + " Agreement supercedes all other proposals, documents, and negotiations whether written or verbal\n\n", new Font(Font.TIMES_ROMAN, 8, Font.BOLDITALIC))); cell.setBorder(0); table1.addCell(cell); p = new Phrase("Date:\n\n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL)); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(p); cell.setBorder(0); table1.addCell(cell); p = new Phrase("Signed:\n\n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL)); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(p); cell.setBorder(0); table1.addCell(cell); p = new Phrase("_______________________", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL)); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(p); cell.setBorder(0); table1.addCell(cell); p = new Phrase("_________________________________________________________________", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL)); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(p); cell.setBorder(0); table1.addCell(cell); table1.addCell(blank); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase( " " + cTitle + " Title\n", tnr8)); cell.setBorder(0); table1.addCell(cell); table1.setCellsFitPage(true); table1.setTableFitsPage(true); document.add(table1); document.newPage(); table1 = new Table(1, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(3); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.add(new Phrase(cTitle.toUpperCase() + " INFORMATION\n", new Font(Font.TIMES_ROMAN, 20, Font.BOLD))); cell.setBackgroundColor(Color.lightGray); cell.setLeading(19); cell.setUseDescender(true); cell.setBorder(0); table1.addCell(cell); document.add(table1); document.add(new Phrase("\n")); table1 = new Table(5, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(1); table1.setWidths(five); cell = new Cell(); cell.setHorizontalAlignment("right"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("Federal I.D. : ", new Font(Font.TIMES_ROMAN, 10, Font.BOLD))); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.setBorder(15); cell.add(new Phrase(federal_id, new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.setUseDescender(true); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("(Both Required)", new Font(Font.TIMES_ROMAN, 8, Font.BOLD))); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("right"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("License Number : ", new Font(Font.TIMES_ROMAN, 10, Font.BOLD))); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.setBorder(15); cell.add(new Phrase(license_number, new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.setUseDescender(true); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("right"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("Contact : ", new Font(Font.TIMES_ROMAN, 10, Font.BOLD))); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.setBorder(15); cell.setUseDescender(true); cell.add(new Phrase(contactName, new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("", new Font(Font.TIMES_ROMAN, 8, Font.BOLD))); cell.setUseDescender(true); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("right"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("Company : ", new Font(Font.TIMES_ROMAN, 10, Font.BOLD))); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.setBorder(15); cell.add(new Phrase(subName, new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.setUseDescender(true); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("right"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("Telephone : ", new Font(Font.TIMES_ROMAN, 10, Font.BOLD))); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.setBorder(15); cell.setUseDescender(true); cell.add(new Phrase(telephone, new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("", new Font(Font.TIMES_ROMAN, 8, Font.BOLD))); cell.setUseDescender(true); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("right"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("Fax : ", new Font(Font.TIMES_ROMAN, 10, Font.BOLD))); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.setBorder(15); cell.add(new Phrase(fax, new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.setUseDescender(true); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("right"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("Mobile phone : ", new Font(Font.TIMES_ROMAN, 10, Font.BOLD))); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.setBorder(15); cell.add(new Phrase(mobile, new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.setUseDescender(true); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("", new Font(Font.TIMES_ROMAN, 8, Font.BOLD))); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("right"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("E-mail : ", new Font(Font.TIMES_ROMAN, 10, Font.BOLD))); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.setBorder(15); cell.add(new Phrase(email, new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.setUseDescender(true); table1.addCell(cell); document.add(table1); //document.add(spacer); table1 = new Table(1, 1); //table1.setBorderWidth(4); //table1.setBorderColor(Color.lightGray); //table1.setDefaultCellBorder(0); table1.setPadding(3); table1.setBorder(0); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); if (insure) cell.add(new Phrase("Please attach a COPY of your current state license to this page:", new Font(Font.TIMES_ROMAN, 12, Font.NORMAL))); else cell.add(new Phrase("", new Font(Font.TIMES_ROMAN, 12, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); document.add(table1); document.add(spacer); table1 = new Table(1, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(3); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); if (insure) cell.add(new Phrase("\n\nAttach\nCopy of\nContractor's\nLicense\nHere\n(If Applicable)", new Font(Font.TIMES_ROMAN, 24, Font.NORMAL, Color.lightGray))); else cell.add(new Phrase("", new Font(Font.TIMES_ROMAN, 24, Font.NORMAL, Color.lightGray))); cell.setBorder(0); table1.addCell(cell); document.add(table1); //document.setMargins(72, 72, 36, 36); document.newPage(); table1 = new Table(1, 1); table1.setOffset(0); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(3); table1.setWidth(100); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.add(new Phrase(title.toUpperCase() + " EXHIBIT \"A\"\n", new Font(Font.TIMES_ROMAN, 20, Font.BOLD))); cell.setLeading(6); cell.setBorder(0); table1.addCell(cell); cell = new Cell(new Phrase("\n", new Font(Font.TIMES_ROMAN, 8))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("CONTRACT DOCUMENTS, PLANS,\nSPECIFICATIONS, ADDENDUMS, ETC.\n", new Font(Font.TIMES_ROMAN, 16, Font.BOLD))); cell.setUseDescender(true); cell.setLeading(17); cell.setBackgroundColor(Color.lightGray); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("\n" + subName + " is responsible to verify versions, dates, and completeness of documents that were used in the preparation of the " + cTitle + "'s bid proposal before signing this " + title + " Agreement\n", tnr8)); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("This " + title + " Agreement includes, but is not limited to the following items:", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.setUseDescender(true); cell.setBorder(Rectangle.BOTTOM); cell.setBorderWidth(0.5f); table1.addCell(cell); document.add(table1); Paragraph prgh = new Paragraph("\n" + bidDocuments + "\n", tnr8); prgh.setLeading(10); document.add(prgh); document.add(spacer); /* p = new Phrase("\n"+bidDocuments, new Font(Font.TIMES_ROMAN, 10, Font.NORMAL)); p.setLeading(10); cell= new Cell(p); cell.setBorder(Rectangle.TOP | Rectangle.BOTTOM); cell.setBorderWidth(0.5f); //cell.setBorderColor(Color.lightGray); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); //cell.setLeading(10); cell.setUseDescender(true); table1.addCell(cell); */ table1 = new Table(1, 1); table1.setOffset(0); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(3); table1.setWidth(100); table1.setTableFitsPage(true); p = new Phrase("\nPlease note below all verbal conditions or instructions, if any, that the " + cTitle + " has received during the bid process which might affect the scope of work as required by the contract documents", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL)); p.setLeading(10); cell = new Cell(p); cell.setBorder(Rectangle.TOP); cell.setBorderWidth(0.5f); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); table1.addCell(cell); document.add(table1); document.newPage(); table1 = new Table(1, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(3); table1.setOffset(0); table1.setWidth(100); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.add(new Phrase(title.toUpperCase() + " EXHIBIT \"B\"\n", new Font(Font.TIMES_ROMAN, 20, Font.BOLD))); cell.setLeading(6); cell.setBorder(0); table1.addCell(cell); cell = new Cell(new Phrase("\n", new Font(Font.TIMES_ROMAN, 8))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("SCOPE OF WORK\n", new Font(Font.TIMES_ROMAN, 16, Font.BOLD))); cell.setBackgroundColor(Color.lightGray); cell.setUseDescender(true); cell.setLeading(17); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.add(new Phrase( "\nThis " + title + " Agreement includes, but is not limited to the following items:\n\n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.setBorder(Rectangle.BOTTOM); cell.setBorderWidth(0.5f); table1.addCell(cell); document.add(table1); prgh = new Paragraph("\n" + contractDescription + "\n", new Font(Font.TIMES_ROMAN, 8, Font.NORMAL)); prgh.setLeading(10); document.add(prgh); //cell= new Cell(prgh); //cell.setBorder(Rectangle.TOP | Rectangle.BOTTOM); //cell.setBorderWidth(0.5f); //cell.setBorderColor(Color.lightGray); //cell.setHorizontalAlignment("left"); //cell.setVerticalAlignment("middle"); //cell.setLeading(10); //cell.setUseDescender(true); //table1.addCell(cell); document.add(spacer); table1 = new Table(1, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(3); table1.setOffset(0); table1.setWidth(100); table1.setTableFitsPage(true); p = new Phrase("\nAll " + cTitle + " bid proposal conditions that are outside of, in addition to or are limiting of conditions contained in the Contract Documents are of no effect and are invalid to the " + title + " Agreement unless expressly included in the description above.", tnr8); p.setLeading(10); cell = new Cell(p); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.setBorder(Rectangle.TOP); cell.setBorderWidth(0.5f); table1.addCell(cell); document.add(table1); //document.setMargins(10, 10, 30, 30); document.newPage(); table1 = new Table(1, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(3); table1.setOffset(0); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.add(new Phrase(title.toUpperCase() + " EXHIBIT \"C\"\n", new Font(Font.TIMES_ROMAN, 20, Font.BOLD))); cell.setLeading(6); cell.setBorder(0); cell.setBorder(0); table1.addCell(cell); cell = new Cell(new Phrase("\n", new Font(Font.TIMES_ROMAN, 8))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.add(new Phrase(cTitle.toUpperCase() + " SPECIAL PROVISIONS AND REQUIREMENTS\n", new Font(Font.TIMES_ROMAN, 16, Font.BOLD))); cell.setBackgroundColor(Color.lightGray); cell.setUseDescender(true); cell.setLeading(17); cell.setBorder(0); table1.addCell(cell); document.add(table1); int count = 1; if (insure) { table1 = new Table(1, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(0); table1.setOffset(4); cell = new Cell(); cell.add(new Phrase("1. Insurance Provisions (If Applicable)", new Font(Font.TIMES_ROMAN, 10, Font.BOLD))); //cell.setLeading(6); cell.setBorder(0); table1.addCell(cell); document.add(table1); count++; table1 = new Table(2, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(0); table1.setWidths(twoD); table1.setOffset(0); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.setLeading(6); cell.add(new Phrase( "a. The " + cTitle + " is required to name the following as additional Primary-Insured:", tnr8)); table1.addCell(blank); cell.setBorder(0); table1.addCell(cell); document.add(table1); table1 = new Table(2, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(0); table1.setWidths(twoE); table1.setOffset(0); cell = new Cell(); cell.setHorizontalAlignment("right"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("Contractor: ", new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase(attr.get("full_name"), new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("right"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("Owner: ", new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase(ownerName, new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("right"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("Other: ", new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase("_______________________________________", tnr8)); cell.setBorder(0); table1.addCell(cell); document.add(table1); table1 = new Table(2, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(0); table1.setWidths(twoD); table1.setOffset(4); p = new Phrase("b. The " + cTitle + " must provide verification of current Worker's Compensation coverage with reference to " + jobName + " on the policy.", new Font(Font.TIMES_ROMAN, 8, Font.NORMAL)); p.setLeading(8); cell = new Cell(p); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.setLeading(8); table1.addCell(blank); cell.setBorder(0); table1.addCell(cell); document.add(table1); } table1 = new Table(1, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(0); table1.setOffset(4); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase(count + ". Release Authorizations", new Font(Font.TIMES_ROMAN, 10, Font.BOLD))); count++; cell.setBorder(0); table1.addCell(cell); document.add(table1); table1 = new Table(2, 1); table1.setOffset(4); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(0); table1.setWidths(twoD); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); p = new Phrase( "List any Owners, Partners, and/or Corporate Officers who are legally authorized to sign for " + subName + " and who will be signing the MONTHLY REQUEST FOR PAYMENT, FINAL REQUEST FOR PAYMENT, and LIEN WAIVER documents:\n\n", tnr8); p.setLeading(8); p1 = new Phrase( " ______________________________________________________________________ ______________________________________________________________________\n", new Font(Font.TIMES_ROMAN, 6, Font.ITALIC)); //p1.setLeading(0); Phrase p2 = new Phrase( " Printed name and title Signature\n\n", new Font(Font.TIMES_ROMAN, 6, Font.ITALIC)); //cell.setLeading(8); cell.add(p); cell.add(p1); cell.add(p2); cell.add(p1); cell.add(p2); cell.add(p1); cell.add(p2); table1.addCell(blank); cell.setBorder(0); table1.addCell(cell); document.add(table1); table1 = new Table(1, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(3); table1.setOffset(0); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase(count + ". Shop Drawings - Samples - Submittals", new Font(Font.TIMES_ROMAN, 10, Font.BOLD))); cell.setBorder(0); table1.addCell(cell); document.add(table1); count++; table1 = new Table(2, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(0); table1.setWidths(twoD); table1.setOffset(2); p = new Phrase( "All shop drawings, materials samples, and submittals shall be submitted to the Contractor within 30 days of the issuance of this " + title + " Agreement unless specifically noted below. All submitted items shall be in number and type as per the contract documents including, but not limited to, the following:", tnr8); p.setLeading(8); cell = new Cell(p); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); table1.addCell(blank); cell.setBorder(0); table1.addCell(cell); document.add(table1); table1 = new Table(2, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(0); table1.setWidths(twoF); table1.setOffset(4); p = new Phrase("--The number of copies of each submittal for " + jobName + " is " + submittal_copies + ".\n--All submittals, of any type, are due on or before " + dueDate + " unless specifically noted otherwise.\n", tnr8); p.setLeading(8); cell = new Cell(p); table1.addCell(blank); cell.setBorder(0); table1.addCell(cell); String submittals = ""; if (!submittalVector.isEmpty()) { p = new Phrase(" Due Date:\n", new Font(Font.TIMES_ROMAN, 8, Font.BOLD)); p.setLeading(8); cell = new Cell(p); cell.setColspan(2); cell.setBorder(0); table1.addCell(cell); for (int i = 0; i < submittalVector.size(); i++) { submittals += (String) submittalVector.elementAt(i) + "\n"; } p = new Phrase(submittals, new Font(Font.TIMES_ROMAN, 8, Font.NORMAL)); p.setLeading(8); cell = new Cell(p); table1.addCell(blank); cell.setBorder(0); table1.addCell(cell); } else { p = new Phrase("\nSubmittals required per contract documents and specifications.\n", new Font(Font.TIMES_ROMAN, 8, Font.BOLD)); p.setLeading(8); cell = new Cell(p); table1.addCell(blank); cell.setBorder(0); table1.addCell(cell); } p = new Phrase("\n(" + subName + " is responsible for all submittals required in the Contract Documents as pertaining to labor and materials included in the scope of this " + title + " Agreement regardless of items listed, not listed, or incorrectly listed above.)", new Font(Font.TIMES_ROMAN, 6, Font.ITALIC)); p.setLeading(8); cell = new Cell(p); table1.addCell(blank); cell.setBorder(0); table1.addCell(cell); document.add(table1); table1 = new Table(2, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(1); table1.setWidths(twoD); table1.setOffset(2); p = new Phrase(cTitle.toUpperCase() + " acknowledges that review and approval of any type of submittal which deviates from the Project Plans and Specifications does NOT relieve the " + cTitle + " from costs, penalties and all other remedies required to meet the published specifications where the " + cTitle + " failed to notify the Owner/Architect/Contractor in writing of the variations from the specifications and failed to obtain written approval for EACH variation from the published specifications.", tnr8); p.setLeading(8); cell = new Cell(p); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); //cell.setLeading(8); table1.addCell(blank); cell.setBorder(0); table1.addCell(cell); document.add(table1); table1 = new Table(1, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(0); table1.setOffset(2); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase(count + ". Project Close-out", new Font(Font.TIMES_ROMAN, 10, Font.BOLD))); cell.setBorder(0); table1.addCell(cell); document.add(table1); count++; table1 = new Table(2, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(0); table1.setOffset(4); table1.setWidths(twoD); p = new Phrase( "All project close-out documents, materials, and Owner-training required by the Contract Documents shall be submitted to the Contractor PRIOR to payment of the " + cTitle + "'s 90% completion payment request. The requirements shall include, but not be limited to, the following:", tnr8); p.setLeading(8); cell = new Cell(p); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); //cell.setLeading(8); table1.addCell(blank); cell.setBorder(0); table1.addCell(cell); document.add(table1); table1 = new Table(2, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(0); table1.setOffset(0); table1.setWidths(twoG); cell = new Cell(); cell.setHorizontalAlignment("right"); cell.setVerticalAlignment("top"); cell.add(new Phrase("\"O & M\" Submittals: ", new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("top"); cell.add(new Phrase(omSubmittals, new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("right"); cell.setVerticalAlignment("top"); cell.add(new Phrase("Full Warranty: ", new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("top"); cell.add(new Phrase(fullWarranty, new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("right"); cell.setVerticalAlignment("top"); cell.add(new Phrase("Up-to-date Lien Release(s): ", new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("top"); cell.add(new Phrase(lienReleases, new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("right"); cell.setVerticalAlignment("top"); cell.add(new Phrase("Signed Training Form: ", new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("top"); cell.add(new Phrase(signedTraining, new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("right"); cell.setVerticalAlignment("top"); cell.add(new Phrase("Materials-Equip-Specialty Items: ", new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("top"); cell.add(new Phrase(specialtyItems, new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("right"); cell.setVerticalAlignment("top"); cell.add(new Phrase("Other Items: ", new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("top"); cell.add(new Phrase(otherItems, new Font(Font.TIMES_ROMAN, 8, Font.NORMAL))); cell.setBorder(0); table1.addCell(cell); document.add(table1); if (insure) { table1 = new Table(1, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(3); table1.setOffset(2); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase(count + ". " + cTitle + " Safety Program (If Applicable)", new Font(Font.TIMES_ROMAN, 10, Font.BOLD))); cell.setBorder(0); table1.addCell(cell); document.add(table1); table1 = new Table(2, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(0); table1.setOffset(2); table1.setWidths(twoD); p = new Phrase( cTitle + " will submit one copy of the " + cTitle + "'s job-specific safety program to " + attr.get("full_name") + " before any equipment, manpower, or materials are brought onto the Project site. ", tnr8); p.setLeading(8); cell = new Cell(p); p = new Phrase(cTitle + " will require it's " + cTitle.toLowerCase() + "s to have in place a job-specific safety program before they enter the Project site.", tnr8); p.setLeading(8); cell.add(p); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); //cell.setLeading(8); table1.addCell(blank); cell.setBorder(0); table1.addCell(cell); document.add(table1); } if (insure) { document.newPage(); table1 = new Table(1, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(3); table1.setOffset(0); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.add(new Phrase(title.toUpperCase() + " EXHIBIT \"D\"", new Font(Font.TIMES_ROMAN, 20, Font.BOLD))); cell.setLeading(6); cell.setBorder(0); table1.addCell(cell); cell = new Cell(new Phrase("\n", new Font(Font.TIMES_ROMAN, 8))); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); cell.add(new Phrase(cTitle.toUpperCase() + "'S COST BREAKDOWN\n", new Font(Font.TIMES_ROMAN, 16, Font.BOLD))); cell.setBackgroundColor(Color.lightGray); cell.setUseDescender(true); cell.setLeading(17); cell.setBorder(0); table1.addCell(cell); document.add(table1); table1 = new Table(1, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setPadding(0); table1.setOffset(2); p = new Phrase("The following information is to be supplied by " + subName + " for " + jobName + ". List all SUPPLIERS and SUBCONTRACTORS for approval and payment confirmation (attach additional pages if needed):", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL)); p.setLeading(12); cell = new Cell(p); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase( " Name City Phone Estimated Dollar Amount", tnr8)); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); p = new Phrase( "________________________________________________________________________ $___________________\n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL)); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); for (int i = 0; i < 10; i++) { cell.add(p); } cell.setBorder(0); table1.addCell(cell); p = new Phrase( "Supplier accepts full responsibility for acts and omissions of his subcontractors and suppliers. No suppliers or subcontractors are to be added or deleted without prior notification to " + attr.get("full_name") + ".", new Font(Font.TIMES_ROMAN, 8, Font.ITALIC)); p.setLeading(10); cell = new Cell(p); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.setLeading(15); cell.setBorder(0); table1.addCell(cell); p = new Phrase( "List the primary phases of your contracted scope of work and the associated costs. This information may be released to the Owner if disputes arise over future billings and progress payments.", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL)); p.setLeading(12); cell = new Cell(p); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.setLeading(15); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); cell.add(new Phrase( "Description/Phase of Work Labor Material Equipment/Tools Sub-subcontractor Total", tnr8)); cell.setBorder(0); table1.addCell(cell); cell = new Cell(); p = new Phrase( "________________________ $____________ $____________ $____________ $____________ $____________ \n", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL)); cell.setHorizontalAlignment("left"); cell.setVerticalAlignment("middle"); for (int i = 0; i < 13; i++) { cell.add(p); } cell.setBorder(0); table1.addCell(cell); document.add(table1); document.add(spacer); table1 = new Table(1, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setOffset(2); table1.setPadding(1); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); //cell.setLeading(10); cell.add(new Phrase(subName, new Font(Font.TIMES_ROMAN, 10, Font.UNDERLINE))); cell.add(new Phrase("\n" + cTitle, new Font(Font.TIMES_ROMAN, 6, Font.ITALIC))); cell.setBorder(0); table1.addCell(cell); document.add(table1); document.add(spacer); document.add(spacer); table1 = new Table(1, 1); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); table1.setOffset(0); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); //cell.setLeading(10); cell.add(new Phrase("By:____________________________", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.add(new Phrase("\nPrint Name of Authorized Company Officer", new Font(Font.TIMES_ROMAN, 6, Font.ITALIC))); cell.setBorder(0); table1.addCell(cell); document.add(table1); document.add(spacer); document.add(spacer); table1 = new Table(1, 1); table1.setOffset(0); table1.setBorderWidth(0); table1.setWidth(100); //table1.setDefaultCellBorder(0); cell = new Cell(); cell.setHorizontalAlignment("center"); cell.setVerticalAlignment("middle"); //cell.setLeading(10); cell.add(new Phrase("By:____________________________", new Font(Font.TIMES_ROMAN, 10, Font.NORMAL))); cell.add(new Phrase("\nAuthorized Signature", new Font(Font.TIMES_ROMAN, 6, Font.ITALIC))); cell.setBorder(0); table1.addCell(cell); document.add(table1); } }
From source file:corner.orm.tapestry.pdf.PdfTemplateSourceDelegate.java
License:Apache License
private void createTemplateByBlock(PdfBlock block, StringBuffer sb) { sb.append("<span jwcid=\""); sb.append(block.getName());/*from w w w. j a v a2 s . co m*/ sb.append("\" "); // rectangle sb.append("rectangle=\"literal:"); Rectangle r = block.getRectangle(); sb.append(r.left()).append(",").append(r.bottom()).append(",").append(r.right()).append(",") .append(r.top()); sb.append("\" "); // other parameter if (block.getValue() != null) sb.append(block.getValue()); sb.append("/>\n"); }
From source file:dinamica.AbstractPDFOutput.java
License:LGPL
/** * Receives a byte buffer that should be filled with resulting PDF. * @param data Data module that provides recordsets to this output module * @param buf Buffer to print PDF, then used to send to browser * @throws Throwable/*from w ww .j ava2s . c om*/ */ protected void createPDF(GenericTransaction data, ByteArrayOutputStream buf) throws Throwable { //pdf objects Document doc = new Document(); PdfWriter docWriter = PdfWriter.getInstance(doc, buf); //header HeaderFooter header = new HeaderFooter(new Phrase(getHeader()), false); header.setBorder(Rectangle.BOTTOM); header.setAlignment(Rectangle.ALIGN_CENTER); doc.setHeader(header); //footer HeaderFooter footer = new HeaderFooter(new Phrase(getFooter()), true); footer.setBorder(Rectangle.TOP); footer.setAlignment(Rectangle.ALIGN_RIGHT); doc.setFooter(footer); //pagesize doc.setPageSize(PageSize.LETTER); doc.open(); //title Paragraph t = new Paragraph(getReportTitle(), new Font(Font.HELVETICA, 18f)); t.setAlignment(Rectangle.ALIGN_CENTER); doc.add(t); //paragraph Paragraph p = new Paragraph("Hello World"); p.setAlignment(Rectangle.ALIGN_CENTER); doc.add(p); doc.close(); docWriter.close(); }
From source file:fr.opensagres.odfdom.converter.pdf.internal.stylable.StylableParagraphWrapper.java
License:Open Source License
public void applyStyles(Style style) { this.lastStyleApplied = style; StyleParagraphProperties paragraphProperties = style.getParagraphProperties(); if (paragraphProperties != null) { // margins Float margin = paragraphProperties.getMargin(); if (margin != null && margin > 0.0f) { super.setIndentationLeft(margin); super.setIndentationRight(margin); super.setSpacingBefore(margin); super.setSpacingAfter(margin); }//from www.java 2s . c o m Float marginLeft = paragraphProperties.getMarginLeft(); if (marginLeft != null && marginLeft > 0.0f) { super.setIndentationLeft(marginLeft); } Float marginRight = paragraphProperties.getMarginRight(); if (marginRight != null && marginRight > 0.0f) { super.setIndentationRight(marginRight); } Float marginTop = paragraphProperties.getMarginTop(); if (marginTop != null && marginTop > 0.0f) { super.setSpacingBefore(marginTop); } Float marginBottom = paragraphProperties.getMarginBottom(); if (marginBottom != null && marginBottom > 0.0f) { super.setSpacingAfter(marginBottom); } // background color Color backgroundColor = paragraphProperties.getBackgroundColor(); if (backgroundColor != null && !TRANSPARENT_COLOR.equals(backgroundColor)) { getWrapperCell().setBackgroundColor(backgroundColor); } // borders StyleBorder border = paragraphProperties.getBorder(); if (border != null && !border.isNoBorder()) { StyleUtils.applyStyles(border, getWrapperCell()); } StyleBorder borderLeft = paragraphProperties.getBorderLeft(); if (borderLeft != null && !borderLeft.isNoBorder()) { StyleUtils.applyStyles(borderLeft, getWrapperCell()); } StyleBorder borderRight = paragraphProperties.getBorderRight(); if (borderRight != null && !borderRight.isNoBorder()) { StyleUtils.applyStyles(borderRight, getWrapperCell()); } StyleBorder borderTop = paragraphProperties.getBorderTop(); if (borderTop != null && !borderTop.isNoBorder()) { StyleUtils.applyStyles(borderTop, getWrapperCell()); } StyleBorder borderBottom = paragraphProperties.getBorderBottom(); if (borderBottom != null && !borderBottom.isNoBorder()) { StyleUtils.applyStyles(borderBottom, getWrapperCell()); } // padding Float padding = paragraphProperties.getPadding(); if (padding != null && padding > 0.0f) { if (getWrapperCell().hasBorder(Rectangle.LEFT)) { getWrapperCell().setPaddingLeft(padding); } if (getWrapperCell().hasBorder(Rectangle.RIGHT)) { getWrapperCell().setPaddingRight(padding); } if (getWrapperCell().hasBorder(Rectangle.TOP)) { getWrapperCell().setPaddingTop(padding); } if (getWrapperCell().hasBorder(Rectangle.BOTTOM)) { getWrapperCell().setPaddingBottom(padding); } } Float paddingLeft = paragraphProperties.getPaddingLeft(); if (paddingLeft != null && paddingLeft > 0.0f) { if (getWrapperCell().hasBorder(Rectangle.LEFT)) { getWrapperCell().setPaddingLeft(paddingLeft); } } Float paddingRight = paragraphProperties.getPaddingRight(); if (paddingRight != null && paddingRight > 0.0f) { if (getWrapperCell().hasBorder(Rectangle.RIGHT)) { getWrapperCell().setPaddingRight(paddingRight); } } Float paddingTop = paragraphProperties.getPaddingTop(); if (paddingTop != null && paddingTop > 0.0f) { if (getWrapperCell().hasBorder(Rectangle.TOP)) { getWrapperCell().setPaddingTop(paddingTop); } } Float paddingBottom = paragraphProperties.getPaddingBottom(); if (paddingBottom != null && paddingBottom > 0.0f) { if (getWrapperCell().hasBorder(Rectangle.BOTTOM)) { getWrapperCell().setPaddingBottom(paddingBottom); } } // join border Boolean joinBorder = paragraphProperties.getJoinBorder(); if (joinBorder != null) { this.joinBorder = joinBorder; } // keep together on the same page Boolean keepTogether = paragraphProperties.getKeepTogether(); if (keepTogether != null) { super.setKeepTogether(keepTogether); } } }
From source file:fr.opensagres.poi.xwpf.converter.pdf.internal.elements.StylableParagraph.java
License:Open Source License
public void setBorder(CTBorder border, int borderSide) { if (border == null) { return;/* w w w. j a v a2 s. c o m*/ } boolean noBorder = (STBorder.NONE == border.getVal() || STBorder.NIL == border.getVal()); // No border if (noBorder) { return; } else { // border size float size = -1; BigInteger borderSize = border.getSz(); if (borderSize != null) { // http://officeopenxml.com/WPtableBorders.php // if w:sz="4" => 1/4 points size = borderSize.floatValue() / 8f; } // border color fr.opensagres.poi.xwpf.converter.core.Color bdColor = ColorHelper.getBorderColor(border); Color borderColor = Converter.toAwtColor(bdColor); // border padding Float space = null; BigInteger borderSpace = border.getSpace(); if (borderSpace != null) { // Specifies the spacing offset. Values are specified in points (1/72nd of an inch). space = borderSpace.floatValue(); } switch (borderSide) { case Rectangle.TOP: if (size != -1) { this.setBorderWidthTop(size); } if (borderColor != null) { super.setBorderColorTop(borderColor); } if (space != null) { super.setBorderPaddingTop(space); } break; case Rectangle.BOTTOM: if (size != -1) { this.setBorderWidthBottom(size); } if (borderColor != null) { super.setBorderColorBottom(borderColor); } if (space != null) { super.setBorderPaddingBottom(space); } break; case Rectangle.LEFT: if (size != -1) { this.setBorderWidthLeft(size); } if (borderColor != null) { super.setBorderColorLeft(borderColor); } if (space != null) { super.setBorderPaddingLeft(space); } break; case Rectangle.RIGHT: if (size != -1) { this.setBorderWidthRight(size); } if (borderColor != null) { super.setBorderColorRight(borderColor); } if (space != null) { super.setBorderPaddingRight(space); } break; } } }
From source file:fr.opensagres.poi.xwpf.converter.pdf.internal.elements.StylableTableCell.java
License:Open Source License
public void setBorderTop(TableCellBorder borderTop, boolean inside) { setBorder(borderTop, inside, Rectangle.TOP); }
From source file:fr.opensagres.poi.xwpf.converter.pdf.internal.elements.StylableTableCell.java
License:Open Source License
public void setBorder(TableCellBorder border, boolean inside, int borderSide) { if (border == null || !border.hasBorder()) { this.disableBorderSide(borderSide); return;//from w w w . j ava 2s . c o m } Float borderSize = border.getBorderSize(); if (inside) { // manage conflict border // divide the border side by 2 to avoid multiply with 2 the border // this code simplify the "Conflicts between adjacent cells" // http://officeopenxml.com/WPtableCellBorderConflicts.php //borderSize = borderSize / 2; } Color borderColor = Converter.toAwtColor(border.getBorderColor()); switch (borderSide) { case Rectangle.TOP: if (borderSize != null) { this.setBorderWidthTop(borderSize); } if (borderColor != null) { this.setBorderColorTop(borderColor); } break; case Rectangle.BOTTOM: if (borderSize != null) { this.setBorderWidthBottom(borderSize); } if (borderColor != null) { this.setBorderColorBottom(borderColor); } break; case Rectangle.LEFT: if (borderSize != null) { this.setBorderWidthLeft(borderSize); } if (borderColor != null) { this.setBorderColorLeft(borderColor); } break; case Rectangle.RIGHT: if (borderSize != null) { this.setBorderWidthRight(borderSize); } if (borderColor != null) { this.setBorderColorRight(borderColor); } break; } }
From source file:fr.opensagres.poi.xwpf.converter.pdf.internal.PdfMapper.java
License:Open Source License
@Override protected IITextContainer startVisitParagraph(XWPFParagraph docxParagraph, ListItemContext itemContext, IITextContainer pdfParentContainer) throws Exception { this.currentRunX = null; // create PDF paragraph StylableParagraph pdfParagraph = pdfDocument.createParagraph(pdfParentContainer); // indentation left Float indentationLeft = stylesDocument.getIndentationLeft(docxParagraph); if (indentationLeft != null) { pdfParagraph.setIndentationLeft(indentationLeft); }/*www. j a va 2 s . c o m*/ // indentation right Float indentationRight = stylesDocument.getIndentationRight(docxParagraph); if (indentationRight != null) { pdfParagraph.setIndentationRight(indentationRight); } // indentation first line Float indentationFirstLine = stylesDocument.getIndentationFirstLine(docxParagraph); if (indentationFirstLine != null) { pdfParagraph.setFirstLineIndent(indentationFirstLine); } // indentation hanging (remove first line) Float indentationHanging = stylesDocument.getIndentationHanging(docxParagraph); if (indentationHanging != null) { pdfParagraph.setFirstLineIndent(-indentationHanging); } // // spacing before Float spacingBefore = stylesDocument.getSpacingBefore(docxParagraph); if (spacingBefore != null) { pdfParagraph.setSpacingBefore(spacingBefore); } // spacing after Float spacingAfter = stylesDocument.getSpacingAfter(docxParagraph); if (spacingAfter != null) { pdfParagraph.setSpacingAfter(spacingAfter); } ParagraphLineSpacing lineSpacing = stylesDocument.getParagraphSpacing(docxParagraph); if (lineSpacing != null) { if (lineSpacing.getLeading() != null && lineSpacing.getMultipleLeading() != null) { pdfParagraph.setLeading(lineSpacing.getLeading(), lineSpacing.getMultipleLeading()); } else { if (lineSpacing.getLeading() != null) { pdfParagraph.setLeading(lineSpacing.getLeading()); } if (lineSpacing.getMultipleLeading() != null) { pdfParagraph.setMultipliedLeading(lineSpacing.getMultipleLeading()); } } } // text-align ParagraphAlignment alignment = stylesDocument.getParagraphAlignment(docxParagraph); if (alignment != null) { switch (alignment) { case LEFT: pdfParagraph.setAlignment(Element.ALIGN_LEFT); break; case RIGHT: pdfParagraph.setAlignment(Element.ALIGN_RIGHT); break; case CENTER: pdfParagraph.setAlignment(Element.ALIGN_CENTER); break; case BOTH: pdfParagraph.setAlignment(Element.ALIGN_JUSTIFIED); break; default: break; } } // background-color Color backgroundColor = stylesDocument.getBackgroundColor(docxParagraph); if (backgroundColor != null) { pdfParagraph.setBackgroundColor(Converter.toAwtColor(backgroundColor)); } // border CTBorder borderTop = stylesDocument.getBorderTop(docxParagraph); pdfParagraph.setBorder(borderTop, Rectangle.TOP); CTBorder borderBottom = stylesDocument.getBorderBottom(docxParagraph); pdfParagraph.setBorder(borderBottom, Rectangle.BOTTOM); CTBorder borderLeft = stylesDocument.getBorderLeft(docxParagraph); pdfParagraph.setBorder(borderLeft, Rectangle.LEFT); CTBorder borderRight = stylesDocument.getBorderRight(docxParagraph); pdfParagraph.setBorder(borderRight, Rectangle.RIGHT); if (itemContext != null) { CTLvl lvl = itemContext.getLvl(); CTPPr lvlPPr = lvl.getPPr(); if (lvlPPr != null) { if (ParagraphIndentationLeftValueProvider.INSTANCE .getValue(docxParagraph.getCTP().getPPr()) == null) { // search the indentation from the level properties only if // paragraph has not override it // see // https://code.google.com/p/xdocreport/issues/detail?id=239 Float indLeft = ParagraphIndentationLeftValueProvider.INSTANCE.getValue(lvlPPr); if (indLeft != null) { pdfParagraph.setIndentationLeft(indLeft); } } if (ParagraphIndentationHangingValueProvider.INSTANCE .getValue(docxParagraph.getCTP().getPPr()) == null) { // search the hanging from the level properties only if // paragraph has not override it // see // https://code.google.com/p/xdocreport/issues/detail?id=239 Float hanging = stylesDocument.getIndentationHanging(lvlPPr); if (hanging != null) { pdfParagraph.setFirstLineIndent(-hanging); } } } CTRPr lvlRPr = lvl.getRPr(); if (lvlRPr != null) { // Font family String listItemFontFamily = stylesDocument.getFontFamilyAscii(lvlRPr); // Get font size Float listItemFontSize = stylesDocument.getFontSize(lvlRPr); // Get font style int listItemFontStyle = Font.NORMAL; Boolean bold = stylesDocument.getFontStyleBold(lvlRPr); if (bold != null && bold) { listItemFontStyle |= Font.BOLD; } Boolean italic = stylesDocument.getFontStyleItalic(lvlRPr); if (italic != null && italic) { listItemFontStyle |= Font.ITALIC; } Boolean strike = stylesDocument.getFontStyleStrike(lvlRPr); if (strike != null && strike) { listItemFontStyle |= Font.STRIKETHRU; } // Font color Color listItemFontColor = stylesDocument.getFontColor(lvlRPr); pdfParagraph.setListItemFontFamily(listItemFontFamily); pdfParagraph.setListItemFontSize(listItemFontSize); pdfParagraph.setListItemFontStyle(listItemFontStyle); pdfParagraph.setListItemFontColor(Converter.toAwtColor(listItemFontColor)); } pdfParagraph.setListItemText(itemContext.getText()); } return pdfParagraph; }
From source file:io.vertigo.dynamo.plugins.export.rtf.RTFExporter.java
License:Apache License
/** {@inheritDoc} */ @Override/*from ww w. j a va 2s .c o m*/ protected void createWriter(final Document document, final OutputStream out) { // final RtfWriter2 writer = RtfWriter2.getInstance(document, out); // writer.setViewerPreferences(PdfWriter.PageLayoutTwoColumnLeft); // advanced page numbers : x/y final Font font = FontFactory.getFont(FontFactory.TIMES_ROMAN, 12, Font.NORMAL); //----- final Paragraph footerParagraph = new Paragraph(); footerParagraph.add(new RtfPageNumber(font)); footerParagraph.add(new Phrase(" / ", font)); footerParagraph.add(new RtfTotalPageNumber(font)); footerParagraph.setAlignment(Element.ALIGN_CENTER); //----- final HeaderFooter footer = new RtfHeaderFooter(footerParagraph); footer.setBorder(Rectangle.TOP); document.setFooter(footer); }
From source file:io.vertigo.quarto.plugins.export.rtf.RTFExporter.java
License:Apache License
/** {@inheritDoc} */ @Override//from ww w .j a va2 s.c o m protected void createWriter(final Document document, final OutputStream out) { RtfWriter2.getInstance(document, out); // advanced page numbers : x/y final Font font = FontFactory.getFont(FontFactory.TIMES_ROMAN, 12, Font.NORMAL); //----- final Paragraph footerParagraph = new Paragraph(); footerParagraph.add(new RtfPageNumber(font)); footerParagraph.add(new Phrase(" / ", font)); footerParagraph.add(new RtfTotalPageNumber(font)); footerParagraph.setAlignment(Element.ALIGN_CENTER); //----- final HeaderFooter footer = new RtfHeaderFooter(footerParagraph); footer.setBorder(Rectangle.TOP); document.setFooter(footer); }