List of usage examples for com.lowagie.text.pdf PdfWriter getInstance
public static PdfWriter getInstance(Document document, OutputStream os) throws DocumentException
PdfWriter
. From source file:com.actelion.research.spiritapp.ui.util.PDFUtils.java
License:Open Source License
public static void convertHSSF2Pdf(Workbook wb, String header, File reportFile) throws Exception { assert wb != null; assert reportFile != null; //Precompute formula FormulaEvaluator evaluator = wb.getCreationHelper().createFormulaEvaluator(); for (int i = 0; i < wb.getNumberOfSheets(); i++) { Sheet sheet = wb.getSheetAt(i);//from w ww .ja v a 2 s. c o m for (Row r : sheet) { for (Cell c : r) { if (c.getCellType() == HSSFCell.CELL_TYPE_FORMULA) { try { evaluator.evaluateFormulaCell(c); } catch (Exception e) { System.err.println(e); } } } } } File tmp = File.createTempFile("tmp_", ".xlsx"); try (OutputStream out = new BufferedOutputStream(new FileOutputStream(tmp))) { wb.write(out); } //Find page orientation int maxColumnsGlobal = 0; for (int sheetNo = 0; sheetNo < wb.getNumberOfSheets(); sheetNo++) { Sheet sheet = wb.getSheetAt(sheetNo); for (Iterator<Row> rowIterator = sheet.iterator(); rowIterator.hasNext();) { Row row = rowIterator.next(); maxColumnsGlobal = Math.max(maxColumnsGlobal, row.getLastCellNum()); } } Rectangle pageSize = maxColumnsGlobal < 10 ? PageSize.A4 : PageSize.A4.rotate(); Document pdfDocument = new Document(pageSize, 10f, 10f, 20f, 20f); PdfWriter writer = PdfWriter.getInstance(pdfDocument, new FileOutputStream(reportFile)); addHeader(writer, header); pdfDocument.open(); //we have two columns in the Excel sheet, so we create a PDF table with two columns //Note: There are ways to make this dynamic in nature, if you want to. //Loop through sheets for (int sheetNo = 0; sheetNo < wb.getNumberOfSheets(); sheetNo++) { Sheet sheet = wb.getSheetAt(sheetNo); //Loop through rows, to find number of columns int minColumns = 1000; int maxColumns = 0; for (Iterator<Row> rowIterator = sheet.iterator(); rowIterator.hasNext();) { Row row = rowIterator.next(); if (row.getFirstCellNum() >= 0) minColumns = Math.min(minColumns, row.getFirstCellNum()); if (row.getLastCellNum() >= 0) maxColumns = Math.max(maxColumns, row.getLastCellNum()); } if (maxColumns == 0) continue; //Loop through first rows, to find relative width float[] widths = new float[maxColumns]; int totalWidth = 0; for (int c = 0; c < maxColumns; c++) { int w = sheet.getColumnWidth(c); widths[c] = w; totalWidth += w; } for (int c = 0; c < maxColumns; c++) { widths[c] /= totalWidth; } //Create new page and a new chapter with the sheet's name if (sheetNo > 0) pdfDocument.newPage(); Chapter pdfSheet = new Chapter(sheet.getSheetName(), sheetNo + 1); PdfPTable pdfTable = null; PdfPCell pdfCell = null; boolean inTable = false; //Loop through cells, to create the content // boolean leftBorder = true; // boolean[] topBorder = new boolean[maxColumns+1]; for (int r = 0; r <= sheet.getLastRowNum(); r++) { Row row = sheet.getRow(r); //Check if we exited a table (empty line) if (row == null) { if (pdfTable != null) { addTable(pdfDocument, pdfSheet, totalWidth, widths, pdfTable); pdfTable = null; } inTable = false; continue; } //Check if we start a table (>MIN_COL_IN_TABLE columns) if (row.getLastCellNum() >= MIN_COL_IN_TABLE) { inTable = true; } if (!inTable) { //Process the data outside table, just add the text boolean hasData = false; Iterator<Cell> cellIterator = row.cellIterator(); while (cellIterator.hasNext()) { Cell cell = cellIterator.next(); if (cell.getCellType() == Cell.CELL_TYPE_BLANK) continue; Chunk chunk = getChunk(wb, cell); pdfSheet.add(chunk); pdfSheet.add(new Chunk(" ")); hasData = true; } if (hasData) pdfSheet.add(Chunk.NEWLINE); } else { //Process the data in table if (pdfTable == null) { //Create table pdfTable = new PdfPTable(maxColumns); pdfTable.setWidths(widths); // topBorder = new boolean[maxColumns+1]; } int cellNumber = minColumns; // leftBorder = false; Iterator<Cell> cellIterator = row.cellIterator(); while (cellIterator.hasNext()) { Cell cell = cellIterator.next(); for (; cellNumber < cell.getColumnIndex(); cellNumber++) { pdfCell = new PdfPCell(); pdfCell.setBorder(0); pdfTable.addCell(pdfCell); } Chunk phrase = getChunk(wb, cell); pdfCell = new PdfPCell(new Phrase(phrase)); pdfCell.setFixedHeight(row.getHeightInPoints() - 3); pdfCell.setNoWrap(!cell.getCellStyle().getWrapText()); pdfCell.setPaddingLeft(1); pdfCell.setHorizontalAlignment( cell.getCellStyle().getAlignment() == CellStyle.ALIGN_CENTER ? PdfPCell.ALIGN_CENTER : cell.getCellStyle().getAlignment() == CellStyle.ALIGN_RIGHT ? PdfPCell.ALIGN_RIGHT : PdfPCell.ALIGN_LEFT); pdfCell.setUseBorderPadding(false); pdfCell.setUseVariableBorders(false); pdfCell.setBorderWidthRight(cell.getCellStyle().getBorderRight() == 0 ? 0 : .5f); pdfCell.setBorderWidthBottom(cell.getCellStyle().getBorderBottom() == 0 ? 0 : cell.getCellStyle().getBorderBottom() > 1 ? 1 : .5f); pdfCell.setBorderWidthLeft(cell.getCellStyle().getBorderLeft() == 0 ? 0 : cell.getCellStyle().getBorderLeft() > 1 ? 1 : .5f); pdfCell.setBorderWidthTop(cell.getCellStyle().getBorderTop() == 0 ? 0 : cell.getCellStyle().getBorderTop() > 1 ? 1 : .5f); String color = cell.getCellStyle().getFillForegroundColorColor() == null ? null : ((XSSFColor) cell.getCellStyle().getFillForegroundColorColor()).getARGBHex(); if (color != null) pdfCell.setBackgroundColor(new Color(Integer.decode("0x" + color.substring(2)))); pdfTable.addCell(pdfCell); cellNumber++; } for (; cellNumber < maxColumns; cellNumber++) { pdfCell = new PdfPCell(); pdfCell.setBorder(0); pdfTable.addCell(pdfCell); } } //Custom code to add all images on the first sheet (works for reporting) if (sheetNo == 0 && row.getRowNum() == 0) { for (PictureData pd : wb.getAllPictures()) { try { Image pdfImg = Image.getInstance(pd.getData()); pdfImg.scaleToFit( pageSize.getWidth() * .8f - pageSize.getBorderWidthLeft() - pageSize.getBorderWidthRight(), pageSize.getHeight() * .8f - pageSize.getBorderWidthTop() - pageSize.getBorderWidthBottom()); pdfSheet.add(pdfImg); } catch (Exception e) { e.printStackTrace(); } } } } if (pdfTable != null) { addTable(pdfDocument, pdfSheet, totalWidth, widths, pdfTable); } pdfDocument.add(pdfSheet); } pdfDocument.close(); }
From source file:com.afunms.report.abstraction.ExcelReport1.java
/** * @author sunqichang///from w ww. j a v a 2s. c om * @param filename * * @param type * pdfdoc */ public void createReport_hardwareNew(String filename, String type) { try { int diskcount = Integer.parseInt(request.getParameter("diskcount")); String starttime = (String) reportHash.get("starttime"); String totime = (String) reportHash.get("totime"); List networkList = (List) reportHash.get("networkList"); List serverList = (List) reportHash.get("serverList"); List dbList = (List) reportHash.get("dbList"); List midwareList = (List) reportHash.get("midwareList"); Document document = new Document(PageSize.A4); if ("doc".equalsIgnoreCase(type)) { RtfWriter2.getInstance(document, new FileOutputStream(filename)); } else { PdfWriter.getInstance(document, new FileOutputStream(filename)); } BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED); Font fontChineseTitle = new Font(bfChinese, 14, Font.BOLD); Font fontChineseRow = new Font(bfChinese, 12, Font.NORMAL); fileName = filename; document.open(); Paragraph title = new Paragraph("", fontChineseTitle); title.setAlignment(Element.ALIGN_CENTER); document.add(title); String contextString = ":" + impReport.getTimeStamp() + " \n"// + ":" + starttime + " " + totime; Paragraph context = new Paragraph(contextString, fontChineseTitle); context.setAlignment(Element.ALIGN_CENTER); // context.setFont(contextFont); // context.setSpacingBefore(5); // context.setFirstLineIndent(5); document.add(context); Iterator networkIt = null; if (networkList != null) { networkIt = networkList.iterator(); } Iterator serverIt = null; if (serverList != null) { serverIt = serverList.iterator(); } Iterator dbIt = null; if (dbList != null) { dbIt = dbList.iterator(); } Iterator midwareIt = null; if (midwareList != null) { midwareIt = midwareList.iterator(); } String[] networkTitle = { "", "", "", "", "IP", "" }; String[] serverTitle = { "", "", "", "", "IP", "", "" }; String[] dbTitle = { "", "", "", "IP" }; String[] midwareTitle = { "", "", "", "IP" }; Table table = new Table(9); table.setWidth(100); table.setAlignment(Element.ALIGN_CENTER);// table.setAutoFillEmptyCells(true); // table.setBorderWidth(1); // table.setBorderColor(new Color(0, 125, 255)); // table.setPadding(2);// table.setSpacing(0);// table.setBorder(2);// for (int i = 0; i < networkTitle.length; i++) { Cell cell = new Cell(); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); cell.addElement(new Paragraph(networkTitle[i], fontChineseTitle)); if (i == 0) { cell.setRowspan(networkList.size() + 1); } if (i == 1 || i == 4 || i == 3) { cell.setColspan(2); } cell.setBackgroundColor(Color.LIGHT_GRAY); table.addCell(cell); } if (networkIt != null) { while (networkIt.hasNext()) { Cell cell1 = new Cell(); Cell cell2 = new Cell(); Cell cell3 = new Cell(); Cell cell4 = new Cell(); Cell cell5 = new Cell(); cell1.setVerticalAlignment(Element.ALIGN_MIDDLE); cell2.setVerticalAlignment(Element.ALIGN_MIDDLE); cell3.setVerticalAlignment(Element.ALIGN_MIDDLE); cell4.setVerticalAlignment(Element.ALIGN_MIDDLE); cell5.setVerticalAlignment(Element.ALIGN_MIDDLE); MonitorNodeDTO monitorNodeDTO = (MonitorNodeDTO) networkIt.next(); cell1.addElement(new Paragraph(monitorNodeDTO.getAlias(), fontChineseRow)); cell2.addElement(new Paragraph(monitorNodeDTO.getCategory(), fontChineseRow)); cell3.addElement(new Paragraph(monitorNodeDTO.getType(), fontChineseRow)); cell4.addElement(new Paragraph(monitorNodeDTO.getIpAddress(), fontChineseRow)); cell5.addElement( new Paragraph(String.valueOf(monitorNodeDTO.getEntityNumber()), fontChineseRow)); cell1.setColspan(2); // cell2.setColspan(2); cell3.setColspan(2); cell4.setColspan(2); // cell5.setColspan(2); table.addCell(cell1); table.addCell(cell2); table.addCell(cell3); table.addCell(cell4); table.addCell(cell5); } } for (int i = 0; i < serverTitle.length; i++) { Cell cell = new Cell(); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); cell.addElement(new Paragraph(serverTitle[i], fontChineseTitle)); if (i == 0) { cell.setRowspan(diskcount + 1 + serverList.size()); } if (i == 5 || i == 6) { cell.setColspan(2); } cell.setBackgroundColor(Color.LIGHT_GRAY); table.addCell(cell); } if (serverIt != null) { while (serverIt.hasNext()) { Cell cell1 = new Cell(); Cell cell2 = new Cell(); Cell cell3 = new Cell(); Cell cell44 = new Cell(); cell1.setVerticalAlignment(Element.ALIGN_MIDDLE); cell2.setVerticalAlignment(Element.ALIGN_MIDDLE); cell3.setVerticalAlignment(Element.ALIGN_MIDDLE); cell44.setVerticalAlignment(Element.ALIGN_MIDDLE); MonitorNodeDTO monitorNodeDTO = (MonitorNodeDTO) serverIt.next(); AssetHelper helper = new AssetHelper(); List<StatisNumer> diskList = helper.getAssetList(monitorNodeDTO.getIpAddress(), "Disk"); List<StatisNumer> memList = helper.getAssetList(monitorNodeDTO.getIpAddress(), "Memory"); cell1.addElement(new Paragraph(monitorNodeDTO.getAlias(), fontChineseRow)); cell2.addElement(new Paragraph(monitorNodeDTO.getCategory(), fontChineseRow)); cell3.addElement(new Paragraph(monitorNodeDTO.getType(), fontChineseRow)); cell44.addElement(new Paragraph(monitorNodeDTO.getIpAddress(), fontChineseRow)); cell1.setRowspan(diskList.size() + 2); cell2.setRowspan(diskList.size() + 2); cell3.setRowspan(diskList.size() + 2); cell44.setRowspan(diskList.size() + 2); table.addCell(cell1); table.addCell(cell2); table.addCell(cell3); table.addCell(cell44); Iterator<StatisNumer> diskIt = diskList.iterator(); int flag = 0; int rowspan = diskList.size() + 2; double sum = 0; while (diskIt.hasNext()) { if (flag == 0 || flag == rowspan / 2) { if (flag == 0) { Cell cellt1 = new Cell(); Cell cellt2 = new Cell(); cell1.setVerticalAlignment(Element.ALIGN_MIDDLE); cell2.setVerticalAlignment(Element.ALIGN_MIDDLE); cellt1.add(new Paragraph("", fontChineseRow)); cellt2.add(new Paragraph("", fontChineseRow)); table.addCell(cellt1); table.addCell(cellt2); } Iterator<StatisNumer> memIt = memList.iterator(); while (memIt.hasNext()) { StatisNumer numer = memIt.next(); if (flag == rowspan / 2) { flag++; continue; } Cell cell6 = new Cell(); Cell cell7 = new Cell(); cell6.setVerticalAlignment(Element.ALIGN_MIDDLE); cell7.setVerticalAlignment(Element.ALIGN_MIDDLE); cell6.addElement(new Paragraph(numer.getName(), fontChineseRow)); cell7.addElement(new Paragraph(numer.getCurrent(), fontChineseRow)); if (flag == 0) { cell6.setRowspan(rowspan / 2); cell7.setRowspan(rowspan / 2); table.addCell(cell6); table.addCell(cell7); break; } else { cell6.setRowspan(rowspan - rowspan / 2); cell7.setRowspan(rowspan - rowspan / 2); table.addCell(cell6); table.addCell(cell7); } } } Cell cell4 = new Cell(); Cell cell5 = new Cell(); cell4.setVerticalAlignment(Element.ALIGN_MIDDLE); cell5.setVerticalAlignment(Element.ALIGN_MIDDLE); StatisNumer numer = diskIt.next(); cell4.addElement(new Paragraph(numer.getName(), fontChineseRow)); cell5.addElement(new Paragraph(numer.getCurrent(), fontChineseRow)); table.addCell(cell4); table.addCell(cell5); sum = Arith.add(sum, Double.parseDouble(numer.getCurrent().replaceAll("[a-zA-Z]", ""))); flag++; } Cell cell6 = new Cell(); Cell cell7 = new Cell(); cell6.setVerticalAlignment(Element.ALIGN_MIDDLE); cell7.setVerticalAlignment(Element.ALIGN_MIDDLE); cell6.addElement(new Paragraph("", fontChineseRow)); cell7.addElement(new Paragraph(Arith.round(sum, 2) + "G", fontChineseRow)); table.addCell(cell6); table.addCell(cell7); } } for (int i = 0; i < dbTitle.length; i++) { Cell cell = new Cell(); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); cell.addElement(new Paragraph(dbTitle[i], fontChineseTitle)); if (i == 0) { cell.setRowspan(dbList.size() + 1); } if (i == 3) { cell.setColspan(4); } else if (i != 0) { cell.setColspan(2); } cell.setBackgroundColor(Color.LIGHT_GRAY); table.addCell(cell); } if (dbIt != null) { while (dbIt.hasNext()) { Cell cell2 = new Cell(); Cell cell3 = new Cell(); Cell cell4 = new Cell(); cell2.setVerticalAlignment(Element.ALIGN_MIDDLE); cell3.setVerticalAlignment(Element.ALIGN_MIDDLE); cell4.setVerticalAlignment(Element.ALIGN_MIDDLE); MonitorDBDTO monitorNodeDTO = (MonitorDBDTO) dbIt.next(); cell2.addElement(new Paragraph(monitorNodeDTO.getAlias(), fontChineseRow)); cell3.addElement(new Paragraph(monitorNodeDTO.getDbtype(), fontChineseRow)); cell4.addElement(new Paragraph(monitorNodeDTO.getIpAddress(), fontChineseRow)); cell2.setColspan(2); cell3.setColspan(2); cell4.setColspan(4); table.addCell(cell2); table.addCell(cell3); table.addCell(cell4); } } for (int i = 0; i < midwareTitle.length; i++) { Cell cell = new Cell(); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); cell.addElement(new Paragraph(midwareTitle[i], fontChineseTitle)); if (i == 0) { cell.setRowspan(midwareList.size() + 1); } if (i == 3) { cell.setColspan(4); } else if (i != 0) { cell.setColspan(2); } cell.setBackgroundColor(Color.LIGHT_GRAY); table.addCell(cell); } if (midwareIt != null) { while (midwareIt.hasNext()) { Cell cell2 = new Cell(); Cell cell3 = new Cell(); Cell cell4 = new Cell(); cell2.setVerticalAlignment(Element.ALIGN_MIDDLE); cell3.setVerticalAlignment(Element.ALIGN_MIDDLE); cell4.setVerticalAlignment(Element.ALIGN_MIDDLE); MonitorMiddlewareDTO monitorNodeDTO = (MonitorMiddlewareDTO) midwareIt.next(); cell2.addElement(new Paragraph(monitorNodeDTO.getAlias(), fontChineseRow)); cell3.addElement(new Paragraph(monitorNodeDTO.getCategory(), fontChineseRow)); cell4.addElement(new Paragraph(monitorNodeDTO.getIpAddress(), fontChineseRow)); cell2.setColspan(2); cell3.setColspan(2); cell4.setColspan(4); table.addCell(cell2); table.addCell(cell3); table.addCell(cell4); } } document.add(table); document.close(); } catch (Exception e) { SysLogger.error("", e); } }
From source file:com.afunms.report.abstraction.ExcelReport1.java
public void createPdfReport_hardware(String filename) { try {// w w w . ja v a 2 s . c o m String starttime = (String) reportHash.get("starttime"); String totime = (String) reportHash.get("totime"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // Document document = new Document(PageSize.A4); // (Writer)document(Writer) PdfWriter.getInstance(document, new FileOutputStream(filename)); fileName = filename; document.open(); // BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED); // Font titleFont = new Font(bfChinese, 12, Font.BOLD); // Font contextFont = new Font(bfChinese, 10, Font.NORMAL); Paragraph title = new Paragraph("", titleFont); // title.setAlignment(Element.ALIGN_CENTER); // title.setFont(titleFont); document.add(title); String contextString = ":" + impReport.getTimeStamp() + " \n"// + ":" + starttime + " " + totime; Paragraph context = new Paragraph(contextString, contextFont); // context.setAlignment(Element.ALIGN_LEFT); // context.setFont(contextFont); // context.setSpacingBefore(5); // context.setFirstLineIndent(5); document.add(context); document.add(new Phrase("\n")); Font fontChinese = new Font(bfChinese, 12, Font.NORMAL, Color.black); PdfPTable aTable = new PdfPTable(4); float[] widths = { 100f, 100f, 300f, 100f }; aTable.setWidths(widths); aTable.setWidthPercentage(100); aTable.addCell(new Phrase("", contextFont)); aTable.addCell(new Phrase("", contextFont)); aTable.addCell(new Phrase("", contextFont)); aTable.addCell(new Phrase("", contextFont)); Vector deviceV = (Vector) reportHash.get("deviceV"); for (int m = 0; m < deviceV.size(); m++) { Devicecollectdata devicedata = (Devicecollectdata) deviceV.get(m); String name = devicedata.getName(); String type = devicedata.getType(); String status = devicedata.getStatus(); aTable.addCell(new Phrase(m + 1 + "", contextFont)); aTable.addCell(new Phrase(type, contextFont)); aTable.addCell(new Phrase(name, contextFont)); aTable.addCell(new Phrase(status, contextFont)); } /* * Image img = * Image.getInstance(ResourceCenter.getInstance().getSysPath() + * "/resource/image/jfreechart/" + newip + "ConnectUtilization" + * ".png"); * * img.setAlignment(Image.LEFT);// img.scalePercent(75); * document.add(aTable); document.add(img); */ document.add(aTable); document.close(); } catch (Exception e) { SysLogger.error("", e); } }
From source file:com.afunms.report.abstraction.ExcelReport1.java
public void createReportusa_oraPDF(String filename) throws DocumentException, IOException { if (impReport.getTable() == null) { fileName = null;//from w w w .java 2 s . c o m return; } try { // Document document = new Document(PageSize.A4); // (Writer)document(Writer) PdfWriter.getInstance(document, new FileOutputStream(filename)); document.open(); // BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED); // Font titleFont = new Font(bfChinese, 12, Font.BOLD); // Font contextFont = new Font(bfChinese, 12, Font.NORMAL); Font contextFont1 = new Font(bfChinese, 11, Font.NORMAL); String hostname = (String) reportHash.get("dbname"); String ip = (String) reportHash.get("ip"); String newip = doip(ip); Paragraph title = new Paragraph(hostname + "", titleFont); // title.setAlignment(Element.ALIGN_CENTER); document.add(title); String Ping = (String) reportHash.get("Ping"); String starttime = (String) reportHash.get("starttime"); String totime = (String) reportHash.get("totime"); Hashtable maxping = (Hashtable) reportHash.get("ping"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String contextString = ":" + impReport.getTimeStamp() + " \n"// + ":" + starttime + " " + totime; Paragraph context = new Paragraph(contextString, contextFont1); // context.setAlignment(Element.ALIGN_LEFT); // context.setFont(contextFont); // context.setSpacingBefore(5); // context.setFirstLineIndent(5); document.add(context); document.add(new Paragraph("\n")); PdfPTable aTable = new PdfPTable(4); float[] widths = { 220f, 220f, 220f, 220f }; aTable.setWidths(widths); aTable.setWidthPercentage(100); PdfPCell cell = null; cell = new PdfPCell(new Phrase("", titleFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); cell = new PdfPCell(new Phrase("", titleFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); cell = new PdfPCell(new Phrase("", titleFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); cell = new PdfPCell(new Phrase("", titleFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); cell = new PdfPCell(new Phrase("")); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); // cell = new PdfPCell(new Phrase((String) maxping.get("pingmax"))); cell = new PdfPCell(new Phrase((String) maxping.get("pingnow")));// HONGLI // MODIFY cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); // cell = new PdfPCell(new Phrase((String) maxping.get("ping"))); cell = new PdfPCell(new Phrase((String) maxping.get("pingmin")));// HONGLI // MODIFY cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); cell = new PdfPCell(new Phrase((String) maxping.get("avgpingcon"))); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); // Image img = Image.getInstance(ResourceCenter.getInstance().getSysPath() + "/resource/image/jfreechart/" + newip + "ConnectUtilization" + ".png"); img.setAlignment(Image.MIDDLE);// img.scalePercent(76); document.add(aTable); document.add(img); document.add(new Paragraph("\n")); if (impReport.getChart() != null) { ByteArrayOutputStream baos = new ByteArrayOutputStream(); try { ChartUtilities.writeChartAsPNG(baos, impReport.getChart().getChart(), impReport.getChart().getWidth(), impReport.getChart().getHeight()); } catch (IOException ioe) { } Image img1 = Image.getInstance(baos.toByteArray()); img1.setAbsolutePosition(0, 0); img1.setAlignment(Image.MIDDLE);// document.add(img1); } document.close(); } catch (Exception e) { // SysLogger.error("Error in ExcelReport.createReport()",e); SysLogger.error("", e); } }
From source file:com.afunms.report.abstraction.ExcelReport1.java
public void createReport_hostNewPDF(String file) throws DocumentException, IOException { Hashtable Memory = (Hashtable) reportHash.get("Memory"); // EventListDao eventListDao = new EventListDao(); Hashtable memMaxHash = (Hashtable) reportHash.get("memmaxhash"); Hashtable memAvgHash = (Hashtable) reportHash.get("memavghash"); Hashtable CPU = (Hashtable) reportHash.get("CPU"); String[] memoryItemch = { "", "", "", "" }; String[] memoryItem = { "Capability", "Utilization" }; if (CPU == null) CPU = new Hashtable(); String cpu = ""; if (CPU.get("cpu") != null) cpu = (String) CPU.get("cpu"); String cpumax = "0.0%"; if (CPU.get("cpumax") != null) cpumax = (String) CPU.get("cpumax"); String avgcpu = ""; if (CPU.get("avgcpu") != null) avgcpu = (String) CPU.get("avgcpu"); String starttime = (String) reportHash.get("starttime"); String totime = (String) reportHash.get("totime"); String hostname = (String) reportHash.get("equipname"); String hostnameDoc = (String) reportHash.get("equipnameDoc"); String ip = (String) reportHash.get("ip"); String typename = (String) reportHash.get("typename"); String startdate = (String) reportHash.get("startdate"); int cpuvalue = ((Integer) reportHash.get("cpuvalue")).intValue(); int memvalue = ((Integer) reportHash.get("memvalue")).intValue(); int diskvalue = ((Integer) reportHash.get("diskvalue")).intValue(); int pingvalue = ((Integer) reportHash.get("pingvalue")).intValue(); /* String type = (String)request.getAttribute("type"); */ Document document = new Document(PageSize.A4); // (Writer)document(Writer) PdfWriter.getInstance(document, new FileOutputStream(file)); document.open();//from w ww. jav a 2 s.c o m // BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED); // Font titleFont = new Font(bfChinese, 12, Font.BOLD); // Font contextFont = new Font(bfChinese, 12, Font.NORMAL); Font contextFont1 = new Font(bfChinese, 10, Font.NORMAL); Font fontChinese = new Font(bfChinese, 12, Font.NORMAL, Color.black); Table aTable = new Table(8); float[] widths = { 220f, 220f, 220f, 110f, 110f, 110f, 110f, 220f }; aTable.setWidths(widths); aTable.setWidth(100); // 90% aTable.setAlignment(Element.ALIGN_CENTER);// aTable.setAutoFillEmptyCells(true); // aTable.setBorderWidth(1); // aTable.setBorderColor(new Color(0, 125, 255)); // aTable.setPadding(2);// aTable.setSpacing(0);// aTable.setBorder(2);// aTable.endHeaders(); Cell cell = null; cell = new Cell(new Phrase("\n" + "" + hostname + "" + "\n", titleFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setColspan(8); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_CENTER); aTable.addCell(cell); cell = new Cell(new Phrase("\n" + "" + "\n", titleFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); aTable.addCell(cell); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // cell = new Cell(new Phrase("\n" + starttime + " " + totime + "\n", contextFont1)); cell.setColspan(7); aTable.addCell(cell); cell = new Cell(new Phrase("\n" + "" + "\n", titleFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); cell = new Cell(new Phrase(hostnameDoc, contextFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); cell = new Cell(new Phrase("IP", titleFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); cell = new Cell(new Phrase(ip)); cell.setColspan(2); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); cell = new Cell(new Phrase("", titleFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setColspan(2); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); cell = new Cell(new Phrase(typename, contextFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); cell = new Cell(new Phrase("\n" + "" + "\n", titleFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); String grade = (String) reportHash.get("grade"); cell = new Cell(new Phrase("\n" + grade + "\n", contextFont)); cell.setColspan(7); aTable.addCell(cell); cell = new Cell(new Phrase("" + "\n" + "" + "\n" + "" + "\n" + "", titleFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setRowspan(2); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); cell = new Cell(new Phrase("\n" + "CPU" + "\n", titleFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); cell = new Cell(new Phrase(avgcpu)); cell.setColspan(2); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); cell = new Cell(new Phrase("CPU", titleFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setColspan(2); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); cell = new Cell(new Phrase(cpumax)); cell.setColspan(2); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); String avgvalue = "0.0%"; cell = new Cell(new Phrase("\n" + "" + "\n", titleFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); if (memAvgHash.get("PhysicalMemory") != null) { avgvalue = (String) memAvgHash.get("PhysicalMemory"); cell = new Cell(new Phrase(avgvalue)); cell.setColspan(2); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); } else { cell = new Cell(new Phrase(avgvalue)); cell.setColspan(2); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); } cell = new Cell(new Phrase("", titleFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setColspan(2); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); String value = "0.0%"; if (memMaxHash.get("PhysicalMemory") != null) { value = (String) memMaxHash.get("PhysicalMemory"); cell = new Cell(new Phrase(value)); cell.setColspan(2); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); } else { cell = new Cell(new Phrase(value)); cell.setColspan(2); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); } // end // end } cell = new Cell(new Phrase("" + "\n" + "" + "\n" + "" + "\n" + "", titleFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setRowspan(4); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); cell = new Cell(new Phrase("\n" + "CPU" + cpuvalue + "" + "\n", contextFont)); cell.setColspan(7); aTable.addCell(cell); cell = new Cell(new Phrase("\n" + "" + memvalue + "" + "\n", contextFont)); cell.setColspan(7); aTable.addCell(cell); cell = new Cell(new Phrase("\n" + "" + pingvalue + "" + "\n", contextFont)); cell.setColspan(7); aTable.addCell(cell); cell = new Cell(new Phrase("\n" + "" + diskvalue + "" + "\n", contextFont)); cell.setColspan(7); aTable.addCell(cell); cell = new Cell(new Phrase("\n" + "" + "\n", titleFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setColspan(8); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // aTable.addCell(cell); String strcpu = ""; String strmem = ""; String strping = ""; String strdisk = ""; if (cpuvalue > 0) { strcpu = " 2 " + cpuvalue + "CPU" + "\n" + "\n"; } else { strcpu = " 2 CPU" + " \n" + "\n"; } if (memvalue > 0) { strmem = " 3 " + memvalue + "" + "\n" + "\n"; } else { strmem = " 3 " + "\n" + "\n"; } if (pingvalue > 0) { strping = " 4 " + pingvalue + "" + "\n" + "\n"; } else { strping = " 4 " + "\n" + "\n"; } if (diskvalue > 0) { strdisk = " 5 " + diskvalue + ""; } else { strdisk = " 5 "; } cell = new Cell(new Phrase(" 1 " + " \n" + "\n" + strcpu + strmem + strping + strdisk + "\n" + "\n" + "\n", contextFont) ); /* * cell = new Cell(new Phrase(" 1 " + " \n" + * "\n" + " 2 " + cpuvalue + "CPU" + "\n" + * "\n" + " 3 "+memvalue+"" + "\n" + * "\n" + " 4 "+pingvalue+"" + "\n" + * "\n"+" 5 "+diskvalue+"" + "\n" + "\n"+ * "\n",contextFont) ); */ cell.setColspan(8); aTable.addCell(cell); document.add(aTable); document.close(); }
From source file:com.afunms.report.abstraction.ExcelReport1.java
public void createReport_ServicePingPDF(String file) throws DocumentException, IOException { String starttime = (String) reportHash.get("starttime"); String totime = (String) reportHash.get("totime"); String servicename = (String) reportHash.get("servicename"); String ip = (String) reportHash.get("ip"); String newip = doip(ip);//from w ww.j a v a 2s . c o m Hashtable CPU = (Hashtable) reportHash.get("CPU"); if (CPU == null) CPU = new Hashtable(); String Ping = (String) reportHash.get("Ping"); Hashtable maxping = (Hashtable) reportHash.get("ping"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // Document document = new Document(PageSize.A4); // (Writer)document(Writer) PdfWriter.getInstance(document, new FileOutputStream(file)); document.open(); // BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED); // Font titleFont = new Font(bfChinese, 12, Font.BOLD); // Font contextFont = new Font(bfChinese, 10, Font.NORMAL); Paragraph title = new Paragraph(servicename + "", titleFont); // title.setAlignment(Element.ALIGN_CENTER); // title.setFont(titleFont); document.add(title); String contextString = ":" + impReport.getTimeStamp() + " \n"// + ":" + starttime + " " + totime; Paragraph context = new Paragraph(contextString, contextFont); // context.setAlignment(Element.ALIGN_LEFT); // context.setFont(contextFont); // context.setSpacingBefore(5); // context.setFirstLineIndent(5); document.add(context); document.add(new Phrase("\n")); Font fontChinese = new Font(bfChinese, 12, Font.NORMAL, Color.black); PdfPTable aTable = new PdfPTable(4); float[] widths = { 220f, 300f, 220f, 220f }; aTable.setWidths(widths); aTable.setWidthPercentage(100); aTable.addCell(new Phrase("", contextFont)); aTable.addCell(new Phrase("", contextFont)); aTable.addCell(new Phrase("", contextFont)); aTable.addCell(new Phrase("", contextFont)); aTable.addCell(""); aTable.addCell(Ping + "%"); aTable.addCell((String) maxping.get("minPing") + "%"); aTable.addCell((String) maxping.get("avgPing") + "%"); Image img = Image.getInstance(ResourceCenter.getInstance().getSysPath() + "/resource/image/jfreechart/" + newip + "pingConnect" + ".png"); img.setAlignment(Image.LEFT);// img.scalePercent(75); document.add(aTable); document.add(img); document.close(); }
From source file:com.afunms.report.abstraction.ExcelReport1.java
/** * @author wxy pdf/*from www . ja v a2s . co m*/ * @param filename * @date 2010-3-27 */ public void createReport_ServiceEventPdf(String filename) throws IOException { if (impReport.getTable() == null) { fileName = null; return; } try { // Document document = new Document(PageSize.A4); // (Writer)document(Writer) PdfWriter.getInstance(document, new FileOutputStream(filename)); document.open(); // BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED); // Font titleFont = new Font(bfChinese, 12, Font.BOLD); // Font contextFont = new Font(bfChinese, 12, Font.NORMAL); String starttime = (String) reportHash.get("starttime"); String totime = (String) reportHash.get("totime"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); List eventlist = new ArrayList(); eventlist = (List) reportHash.get("eventlist"); String ip = ""; String sum = ""; String levelone = ""; String leveltwo = ""; String levelthree = ""; String servicename = ""; if (eventlist != null && eventlist.size() > 0) { List _eventlist = (List) eventlist.get(0); if (_eventlist != null && _eventlist.size() > 0) { ip = (String) _eventlist.get(0); servicename = (String) _eventlist.get(1); sum = (String) _eventlist.get(2); levelone = (String) _eventlist.get(3); leveltwo = (String) _eventlist.get(4); levelthree = (String) _eventlist.get(5); } } Paragraph title = new Paragraph(servicename + "", titleFont); // title.setAlignment(Element.ALIGN_CENTER); // title.setFont(titleFont); document.add(title); String contextString = ":" + impReport.getTimeStamp() + " \n"// + ":" + starttime + " " + totime; Paragraph context = new Paragraph(contextString, contextFont); // context.setAlignment(Element.ALIGN_LEFT); // context.setFont(contextFont); // context.setSpacingBefore(6); // context.setFirstLineIndent(6); document.add(context); document.add(new Paragraph("\n")); PdfPTable servTable = new PdfPTable(6); float[] cellWidths = { 220f, 220f, 220f, 220f, 220f, 220f }; servTable.setWidths(cellWidths); servTable.setWidthPercentage(100); PdfPCell cell = null; cell = new PdfPCell(new Phrase("", titleFont)); cell.setColspan(6); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // servTable.addCell(cell); cell = new PdfPCell(new Phrase("IP", titleFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // servTable.addCell(cell); cell = new PdfPCell(new Phrase("", titleFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // servTable.addCell(cell); cell = new PdfPCell(new Phrase("()", titleFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // servTable.addCell(cell); cell = new PdfPCell(new Phrase("()", titleFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // servTable.addCell(cell); cell = new PdfPCell(new Phrase("()", titleFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // servTable.addCell(cell); cell = new PdfPCell(new Phrase("()", titleFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // servTable.addCell(cell); cell = new PdfPCell(new Phrase(ip, contextFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // servTable.addCell(cell); cell = new PdfPCell(new Phrase(servicename, contextFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // servTable.addCell(cell); cell = new PdfPCell(new Phrase(sum, contextFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // servTable.addCell(cell); cell = new PdfPCell(new Phrase(levelone, contextFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // servTable.addCell(cell); cell = new PdfPCell(new Phrase(leveltwo, contextFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // servTable.addCell(cell); cell = new PdfPCell(new Phrase(levelthree, contextFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // servTable.addCell(cell); document.add(servTable); document.add(new Paragraph("\n")); // PdfPTable eventTable = new PdfPTable(6); float[] eventWidths = { 220f, 220f, 220f, 220f, 220f, 220f }; eventTable.setWidths(eventWidths); eventTable.setWidthPercentage(100); cell = new PdfPCell(new Phrase("", titleFont)); cell.setColspan(6); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // eventTable.addCell(cell); cell = new PdfPCell(new Phrase("", titleFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // eventTable.addCell(cell); cell = new PdfPCell(new Phrase(" ", titleFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // eventTable.addCell(cell); cell = new PdfPCell(new Phrase(" ", titleFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // eventTable.addCell(cell); cell = new PdfPCell(new Phrase("", titleFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // eventTable.addCell(cell); cell = new PdfPCell(new Phrase(" ", titleFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // eventTable.addCell(cell); cell = new PdfPCell(new Phrase(" ", titleFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // eventTable.addCell(cell); int index = 0; java.text.SimpleDateFormat _sdf = new java.text.SimpleDateFormat("MM-dd HH:mm"); List list = (ArrayList) reportHash.get("list"); if (list != null && list.size() > 0) { for (int i = 0; i < list.size(); i++) { index++; EventList event = (EventList) list.get(i); Date cc = event.getRecordtime().getTime(); Integer eventid = event.getId(); String eventlocation = event.getEventlocation(); String content = event.getContent(); String level = String.valueOf(event.getLevel1()); String status = String.valueOf(event.getManagesign()); String s = status; String showlevel = null; String act = ""; if ("1".equals(level)) { showlevel = ""; } else if ("2".equals(level)) { showlevel = ""; } else { showlevel = ""; } if ("0".equals(status)) { status = ""; } if ("1".equals(status)) { status = ""; } if ("2".equals(status)) { status = ""; } String rptman = event.getReportman(); String rtime1 = _sdf.format(cc); cell = new PdfPCell(new Phrase(String.valueOf(index), contextFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // eventTable.addCell(cell); if ("3".equals(level)) { cell = new PdfPCell(new Phrase(showlevel, contextFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // cell.setBackgroundColor(Color.red); eventTable.addCell(cell); } else if ("2".equals(level)) { cell = new PdfPCell(new Phrase(showlevel, contextFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // cell.setBackgroundColor(Color.orange); eventTable.addCell(cell); } else { cell = new PdfPCell(new Phrase(showlevel, contextFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // cell.setBackgroundColor(Color.yellow); eventTable.addCell(cell); } cell = new PdfPCell(new Phrase(content, contextFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // eventTable.addCell(cell); cell = new PdfPCell(new Phrase(rtime1, contextFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // eventTable.addCell(cell); cell = new PdfPCell(new Phrase(rptman, contextFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // eventTable.addCell(cell); cell = new PdfPCell(new Phrase(status, contextFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); // cell.setVerticalAlignment(Element.ALIGN_MIDDLE); // eventTable.addCell(cell); } } document.add(eventTable); document.close(); } catch (Exception e) { // SysLogger.error("Error in ExcelReport.createReport()",e); SysLogger.error("", e); } }
From source file:com.afunms.report.abstraction.ExcelReport1.java
/** * @author wxy add web /* w w w .j a v a 2 s . c o m*/ * @param file * @throws DocumentException * @throws IOException */ public void createReport_ServiceCompPdf(String file) throws DocumentException, IOException { String starttime = (String) reportHash.get("starttime"); String totime = (String) reportHash.get("totime"); String servicename = (String) reportHash.get("servicename"); String ip = (String) reportHash.get("ip"); String newip = doip(ip); WebConfig config = (WebConfig) reportHash.get("webconfig"); String Ping = (String) reportHash.get("Ping"); Hashtable maxping = (Hashtable) reportHash.get("ping"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // Document document = new Document(PageSize.A4); // (Writer)document(Writer) PdfWriter.getInstance(document, new FileOutputStream(file)); document.open(); // BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED); // Font titleFont = new Font(bfChinese, 12, Font.BOLD); // Font contextFont = new Font(bfChinese, 10, Font.NORMAL); Paragraph title = new Paragraph(servicename + "", titleFont); // title.setAlignment(Element.ALIGN_CENTER); // title.setFont(titleFont); document.add(title); List comInfo = (List) reportHash.get("comInfo"); String type = (String) reportHash.get("type"); StringBuffer sb = new StringBuffer(); sb.append(":" + impReport.getTimeStamp() + " \n"); sb.append(":" + starttime + " " + totime + " \n"); if (comInfo != null) { for (int i = 0; i < comInfo.size(); i++) { sb.append(comInfo.get(i)); } } Paragraph context = new Paragraph(sb.toString(), contextFont); // context.setAlignment(Element.ALIGN_LEFT); // context.setFont(contextFont); // context.setSpacingBefore(5); // context.setFirstLineIndent(5); document.add(context); document.add(new Phrase("\n")); Font fontChinese = new Font(bfChinese, 12, Font.NORMAL, Color.black); PdfPTable aTable = new PdfPTable(4); float[] widths = { 220f, 300f, 220f, 220f }; aTable.setWidths(widths); aTable.setWidthPercentage(100); aTable.addCell(new Phrase("", contextFont)); aTable.addCell(new Phrase("", contextFont)); aTable.addCell(new Phrase("", contextFont)); aTable.addCell(new Phrase("", contextFont)); aTable.addCell(""); aTable.addCell(Ping + "%"); aTable.addCell((String) maxping.get("minPing") + "%"); aTable.addCell((String) maxping.get("avgPing") + "%"); document.add(aTable); Image img1 = Image.getInstance(ResourceCenter.getInstance().getSysPath() + "/resource/image/jfreechart/" + newip + "pingConnect" + ".png"); img1.setAlignment(Image.LEFT);// img1.scalePercent(75); document.add(img1); if (type != null && type.equals("web")) { Image img2 = Image.getInstance(ResourceCenter.getInstance().getSysPath() + "/resource/image/jfreechart/" + newip + "delayConnect" + ".png"); Image img3 = Image.getInstance(ResourceCenter.getInstance().getSysPath() + "/resource/image/jfreechart/" + newip + "pageConnect" + ".png"); Image img4 = Image.getInstance(ResourceCenter.getInstance().getSysPath() + "/resource/image/jfreechart/" + newip + "changeConnect" + ".png"); img2.setAlignment(Image.LEFT);// img2.scalePercent(75); img3.setAlignment(Image.LEFT);// img3.scalePercent(75); img4.setAlignment(Image.LEFT);// img4.scalePercent(75); document.add(img2); document.add(img3); document.add(img4); } document.close(); }
From source file:com.afunms.report.abstraction.ExcelReport1.java
public void createReport_hostPDF(String file) throws DocumentException, IOException { String starttime = (String) reportHash.get("starttime"); String totime = (String) reportHash.get("totime"); String hostname = (String) reportHash.get("equipname"); String ip = (String) reportHash.get("ip"); String newip = doip(ip);/* w ww . j av a 2 s .co m*/ // WritableSheet sheet = wb.createSheet(hostname + "", 0); Hashtable CPU = (Hashtable) reportHash.get("CPU"); if (CPU == null) CPU = new Hashtable(); String Ping = (String) reportHash.get("Ping"); Calendar colTime = (Calendar) reportHash.get("time"); Date cc = colTime.getTime(); Hashtable Memory = (Hashtable) reportHash.get("Memory"); Hashtable Disk = (Hashtable) reportHash.get("Disk"); Hashtable memMaxHash = (Hashtable) reportHash.get("memmaxhash"); Hashtable memAvgHash = (Hashtable) reportHash.get("memavghash"); Hashtable maxping = (Hashtable) reportHash.get("ping"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String[] memoryItemch = { "", "", "", "" }; String[] memoryItem = { "Capability", "Utilization" }; String[] diskItem = { "AllSize", "UsedSize", "Utilization" }; String[] diskItemch = { "", "", "" }; // Document document = new Document(PageSize.A4); // (Writer)document(Writer) PdfWriter.getInstance(document, new FileOutputStream(file)); document.open(); // BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED); // Font titleFont = new Font(bfChinese, 12, Font.BOLD); // Font contextFont = new Font(bfChinese, 10, Font.NORMAL); Paragraph title = new Paragraph(hostname + "", titleFont); // title.setAlignment(Element.ALIGN_CENTER); // title.setFont(titleFont); document.add(title); String contextString = ":" + impReport.getTimeStamp() + " \n"// + ":" + starttime + " " + totime; Paragraph context = new Paragraph(contextString, contextFont); // context.setAlignment(Element.ALIGN_LEFT); // context.setFont(contextFont); // context.setSpacingBefore(5); // context.setFirstLineIndent(5); document.add(context); document.add(new Phrase("\n")); Font fontChinese = new Font(bfChinese, 12, Font.NORMAL, Color.black); Table aTable = new Table(4); aTable.setAutoFillEmptyCells(true); aTable.setWidth(100); // float[] widths = { 220f, 300f, 220f, 220f }; // aTable.setWidths(widths); aTable.setPadding(5); // aTable.setWidthPercentage(100); Cell cell = new Cell(); cell.addElement(new Paragraph("", contextFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable.addCell(cell); cell = new Cell(); cell.addElement(new Paragraph("", contextFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable.addCell(cell); cell = new Cell(); cell.addElement(new Paragraph("", contextFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable.addCell(cell); cell = new Cell(); cell.addElement(new Paragraph("", contextFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable.addCell(cell); cell = new Cell(); cell.addElement(new Paragraph("", contextFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); cell.setBackgroundColor(Color.LIGHT_GRAY); aTable.addCell(cell); aTable.addCell(Ping + "%"); aTable.addCell((String) maxping.get("pingmax")); aTable.addCell((String) maxping.get("avgpingcon")); Image img = Image.getInstance(ResourceCenter.getInstance().getSysPath() + "/resource/image/jfreechart/" + newip + "ConnectUtilization" + ".png"); img.setAlignment(Image.LEFT);// img.scalePercent(75); document.add(aTable); document.add(img); String cpu = ""; if (CPU.get("cpu") != null) cpu = (String) CPU.get("cpu"); String cpumax = ""; if (CPU.get("cpumax") != null) cpumax = (String) CPU.get("cpumax"); String avgcpu = ""; if (CPU.get("avgcpu") != null) avgcpu = (String) CPU.get("avgcpu"); Table aTable1 = new Table(4); aTable1.setAutoFillEmptyCells(true); aTable1.setWidth(100); aTable1.setPadding(5); // float[] width = { 220f, 300f, 220f, 220f }; // aTable1.setWidths(width); // aTable1.setWidthPercentage(100); cell = new Cell(); cell.addElement(new Paragraph("CPU", contextFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable1.addCell(cell); cell = new Cell(); cell.addElement(new Paragraph("", contextFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable1.addCell(cell); cell = new Cell(); cell.addElement(new Paragraph("", contextFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable1.addCell(cell); cell = new Cell(); cell.addElement(new Paragraph("", contextFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable1.addCell(cell); cell = new Cell(); cell.addElement(new Paragraph("", contextFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable1.addCell(cell); aTable1.addCell(cpu + "%"); aTable1.addCell(cpumax); aTable1.addCell(avgcpu); Image img1 = Image.getInstance( ResourceCenter.getInstance().getSysPath() + "/resource/image/jfreechart/" + newip + "cpu" + ".png"); img.setAlignment(Image.MIDDLE);// img1.scalePercent(75); document.add(aTable1); document.add(img1); if (Memory != null && Memory.size() > 0) { Table aTable2 = new Table(6); aTable2.setPadding(5); aTable2.setAutoFillEmptyCells(true); aTable2.setWidth(100); // float[] widthss = { 220f, 300f, 220f, 220f, 220f, 220f }; // aTable2.setWidths(widthss); // aTable2.setWidthPercentage(100); cell = new Cell(new Phrase("", contextFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable2.addCell(cell); cell = new Cell(new Phrase("", contextFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); cell.setBackgroundColor(Color.LIGHT_GRAY); aTable2.addCell(cell); // for (int i = 0; i < memoryItemch.length; i++) { cell = new Cell(new Phrase(memoryItemch[i], contextFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); cell.setBackgroundColor(Color.LIGHT_GRAY); aTable2.addCell(cell); } // for (int i = 0; i < Memory.size(); i++) { aTable2.addCell(""); Hashtable mhash = (Hashtable) (Memory.get(new Integer(i))); String name = (String) mhash.get("name"); cell = new Cell(new Phrase(name)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable2.addCell(cell); for (int j = 0; j < memoryItem.length; j++) { String value = ""; if (mhash.get(memoryItem[j]) != null) { value = (String) mhash.get(memoryItem[j]); } cell = new Cell(new Phrase(value)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable2.addCell(cell); } String value = ""; if (memMaxHash.get(name) != null) { value = (String) memMaxHash.get(name); Cell cell3 = new Cell(new Phrase(value)); cell3.setHorizontalAlignment(Element.ALIGN_CENTER); cell3.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable2.addCell(cell3); } String avgvalue = ""; if (memAvgHash.get(name) != null) { avgvalue = (String) memAvgHash.get(name); cell = new Cell(new Phrase(avgvalue)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable2.addCell(cell); } } // end // Image img2 = Image.getInstance(ResourceCenter.getInstance().getSysPath() + "/resource/image/jfreechart/" + newip + "memory" + ".png"); img.setAlignment(Image.MIDDLE);// img2.scalePercent(75); document.add(aTable2); document.add(img2); } else { Table aTable2 = new Table(6); float[] widthss = { 220f, 300f, 220f, 220f, 220f, 220f }; aTable2.setWidths(widthss); // aTable2.setWidthPercentage(100); /* * aTable2.setWidth(100); // 90% * aTable2.setAlignment(Element.ALIGN_CENTER);// * aTable2.setAutoFillEmptyCells(true); // * aTable2.setBorderWidth(1); // aTable2.setBorderColor(new * Color(0, 125, 255)); // aTable2.setPadding(2);// * aTable2.setSpacing(0);// * aTable2.setBorder(2);// aTable2.endHeaders(); */ cell = new Cell(new Phrase("", contextFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable2.addCell(cell); cell = new Cell(new Phrase("", contextFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); cell.setBackgroundColor(Color.LIGHT_GRAY); aTable2.addCell(cell); // for (int i = 0; i < memoryItemch.length; i++) { cell = new Cell(new Phrase(memoryItemch[i], contextFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable2.addCell(cell); } // String[] names = null; HostNodeDao dao = new HostNodeDao(); HostNode node = (HostNode) dao.findByCondition("ip_address", ip).get(0); // Monitoriplist monitor = monitorManager.getByIpaddress(ip); if (node.getSysOid().startsWith("1.3.6.1.4.1.311")) { names = new String[] { "PhysicalMemory", "VirtualMemory" }; } else { names = new String[] { "PhysicalMemory", "SwapMemory" }; } for (int i = 0; i < names.length; i++) { String name = names[i]; aTable2.addCell(""); cell = new Cell(new Phrase(names[i])); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable2.addCell(cell); for (int j = 0; j < memoryItem.length; j++) { // String value = ""; cell = new Cell(new Phrase(value)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable2.addCell(cell); } String value = ""; if (memMaxHash.get(name) != null) { value = (String) memMaxHash.get(name); Cell cell2 = new Cell(new Phrase(value)); cell2.setHorizontalAlignment(Element.ALIGN_CENTER); cell2.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable2.addCell(cell2); } else { Cell cell3 = new Cell(new Phrase(value)); cell3.setHorizontalAlignment(Element.ALIGN_CENTER); cell3.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable2.addCell(cell3); } String avgvalue = ""; if (memAvgHash.get(name) != null) { avgvalue = (String) memAvgHash.get(name); Cell cell4 = new Cell(new Phrase(avgvalue)); cell4.setHorizontalAlignment(Element.ALIGN_CENTER); cell4.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable2.addCell(cell4); } else { Cell cell5 = new Cell(new Phrase(avgvalue)); cell5.setHorizontalAlignment(Element.ALIGN_CENTER); cell5.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable2.addCell(cell5); } } // end // Image img2 = Image.getInstance(ResourceCenter.getInstance().getSysPath() + "/resource/image/jfreechart/" + newip + "memory" + ".png"); img.setAlignment(Image.MIDDLE);// img2.scalePercent(75); document.add(aTable2); document.add(img2); } Table aTable3 = new Table(5); aTable3.setAutoFillEmptyCells(true); aTable3.setPadding(5); aTable3.setWidth(100); // float[] widthss1 = { 220f, 440f, 150f, 150f, 220f }; // aTable3.setWidths(widthss1); // aTable3.setWidthPercentage(100); if (Disk != null && Disk.size() > 0) { cell = new Cell(new Phrase("", contextFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); cell.setBackgroundColor(Color.LIGHT_GRAY); aTable3.addCell(cell); cell = new Cell(new Phrase("", contextFont)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); cell.setBackgroundColor(Color.LIGHT_GRAY); aTable3.addCell(cell); for (int i = 0; i < diskItemch.length; i++) { cell = new Cell(new Phrase(diskItemch[i], contextFont)); cell.setBackgroundColor(Color.LIGHT_GRAY); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable3.addCell(cell); } // for (int i = 0; i < Disk.size(); i++) { aTable3.addCell(""); Hashtable diskhash = (Hashtable) (Disk.get(new Integer(i))); String name = (String) diskhash.get("name"); cell = new Cell(new Phrase(name)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable3.addCell(cell); for (int j = 0; j < diskItem.length; j++) { String value = ""; if (diskhash.get(diskItem[j]) != null) { value = (String) diskhash.get(diskItem[j]); } cell = new Cell(new Phrase(value)); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_MIDDLE); aTable3.addCell(cell); } } // end // Image img3 = Image.getInstance(ResourceCenter.getInstance().getSysPath() + "/resource/image/jfreechart/" + newip + "disk" + ".png"); img3.setAlignment(Image.MIDDLE);// img3.scalePercent(78); document.add(aTable3); // document.add(new Paragraph("\n")); document.add(img3); } if (impReport.getChart() != null) { ByteArrayOutputStream baos = new ByteArrayOutputStream(); try { ChartUtilities.writeChartAsPNG(baos, impReport.getChart().getChart(), impReport.getChart().getWidth(), impReport.getChart().getHeight()); } catch (IOException ioe) { } Image img3 = Image.getInstance(baos.toByteArray()); img3.setAlignment(Image.MIDDLE);// img3.scalePercent(76); document.add(new Paragraph("\n")); // document.add(aTable3); document.add(img3); } document.close(); }
From source file:com.afunms.report.abstraction.ExcelReport1.java
public void createReport_pingPDF(String file) throws DocumentException, IOException { String starttime = (String) reportHash.get("starttime"); String totime = (String) reportHash.get("totime"); String hostname = (String) reportHash.get("equipname"); String ip = (String) reportHash.get("ip"); String newip = doip(ip);/*ww w . j a va2 s.co m*/ // WritableSheet sheet = wb.createSheet(hostname + "", 0); Hashtable CPU = (Hashtable) reportHash.get("CPU"); if (CPU == null) CPU = new Hashtable(); String Ping = (String) reportHash.get("Ping"); Calendar colTime = (Calendar) reportHash.get("time"); Date cc = colTime.getTime(); Hashtable Memory = (Hashtable) reportHash.get("Memory"); Hashtable Disk = (Hashtable) reportHash.get("Disk"); Hashtable memMaxHash = (Hashtable) reportHash.get("memmaxhash"); Hashtable memAvgHash = (Hashtable) reportHash.get("memavghash"); Hashtable maxping = (Hashtable) reportHash.get("ping"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String[] memoryItemch = { "", "", "", "" }; String[] memoryItem = { "Capability", "Utilization" }; String[] diskItem = { "AllSize", "UsedSize", "Utilization" }; String[] diskItemch = { "", "", "" }; // Document document = new Document(PageSize.A4); // (Writer)document(Writer) PdfWriter.getInstance(document, new FileOutputStream(file)); document.open(); // BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED); // Font titleFont = new Font(bfChinese, 12, Font.BOLD); // Font contextFont = new Font(bfChinese, 10, Font.NORMAL); Paragraph title = new Paragraph(hostname + "", titleFont); // title.setAlignment(Element.ALIGN_CENTER); // title.setFont(titleFont); document.add(title); String contextString = ":" + impReport.getTimeStamp() + " \n"// + ":" + starttime + " " + totime; Paragraph context = new Paragraph(contextString, contextFont); // context.setAlignment(Element.ALIGN_LEFT); // context.setFont(contextFont); // context.setSpacingBefore(5); // context.setFirstLineIndent(5); document.add(context); document.add(new Phrase("\n")); Font fontChinese = new Font(bfChinese, 12, Font.NORMAL, Color.black); PdfPTable aTable = new PdfPTable(4); float[] widths = { 220f, 300f, 220f, 220f }; aTable.setWidths(widths); aTable.setWidthPercentage(100); aTable.addCell(new Phrase("", contextFont)); aTable.addCell(new Phrase("", contextFont)); aTable.addCell(new Phrase("", contextFont)); aTable.addCell(new Phrase("", contextFont)); // aTable.addCell("3.2",Ping+"%"); aTable.addCell(""); aTable.addCell(Ping + "%"); aTable.addCell((String) maxping.get("pingmax")); aTable.addCell((String) maxping.get("avgpingcon")); Image img = Image.getInstance(ResourceCenter.getInstance().getSysPath() + "/resource/image/jfreechart/" + newip + "ConnectUtilization" + ".png"); img.setAlignment(Image.LEFT);// img.scalePercent(75); document.add(aTable); document.add(img); document.close(); }