List of usage examples for com.itextpdf.layout.element Div Div
Div
From source file:org.zafritech.zidingorms.io.pdf.PdfServiceImpl.java
@Override public ByteArrayOutputStream DownloadPDF(Long id) { ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); PdfWriter writer = new PdfWriter(outputStream); PdfDocument pdf = new PdfDocument(writer); PageSize pagesize = PageSize.A4;//w w w. ja va 2 s . c o m Artifact artifact = artifactRepository.findOne(id); pdf.addEventHandler(PdfDocumentEvent.START_PAGE, new Header(artifact.getArtifactLongName())); // TableHeader handler = new TableHeader(); // pdf.addEventHandler(PdfDocumentEvent.START_PAGE, handler); PageXofY event = new PageXofY(pdf); pdf.addEventHandler(PdfDocumentEvent.END_PAGE, event); try (Document document = new Document(pdf, pagesize)) { Div div = new Div(); document.setMargins(70, 50, 70, 50); styles = createPdfStyles(document); List<Item> items = itemRepository.findByArtifactIdOrderBySortIndexAsc(id); document.setTextAlignment(TextAlignment.CENTER); addEmptyLine(document, 20); document.add( new Paragraph(artifact.getArtifactProject().getProjectName()).addStyle(styles.get("Title"))); document.add(new Paragraph(artifact.getArtifactType().getArtifactTypeLongName()) .addStyle(styles.get("Subtitle"))); document.add(new Paragraph(artifact.getIdentifier()).addStyle(styles.get("Normal"))); addEmptyLine(document, 45); document.setTextAlignment(TextAlignment.LEFT); document.add(new AreaBreak(AreaBreakType.NEXT_PAGE)); for (Item item : items) { if (item.getItemClass().equals("HEADER")) { switch (item.getItemLevel()) { case 1: document.add(new AreaBreak(AreaBreakType.NEXT_PAGE)); document.add(new Paragraph(item.getItemValue()).addStyle(styles.get("Header1"))); break; case 2: document.add(new Paragraph(item.getItemValue()).addStyle(styles.get("Header2"))); break; case 3: document.add(new Paragraph(item.getItemValue()).addStyle(styles.get("Header3"))); break; case 4: document.add(new Paragraph(item.getItemValue()).addStyle(styles.get("Header4"))); break; case 5: document.add(new Paragraph(item.getItemValue()).addStyle(styles.get("Header5"))); break; default: document.add(new Paragraph(item.getItemValue()).addStyle(styles.get("Normal"))); } } else if (item.getItemClass().equals("REQUIREMENT")) { Paragraph p = new Paragraph(); p.add((item.getIdentifier()).trim() + ":").add(new Tab()).add((item.getItemValue()).trim()); document.add(p); addEmptyLine(document, 1); } else { document.add(new Paragraph(item.getItemValue()).addStyle(styles.get("Normal"))); } } document.add(div); event.writeTotal(pdf); document.close(); return outputStream; } catch (Exception e) { return null; } }