List of usage examples for com.lowagie.text Image scalePercent
public void scalePercent(float percent)
From source file:net.bull.javamelody.internal.web.pdf.PdfJavaInformationsReport.java
License:Apache License
private void writeSummary(JavaInformations javaInformations) throws BadElementException, IOException { addCell(getString("Host") + ':'); currentTable.addCell(new Phrase(javaInformations.getHost(), boldCellFont)); addCell(getString("memoire_utilisee") + ':'); final MemoryInformations memoryInformations = javaInformations.getMemoryInformations(); final long usedMemory = memoryInformations.getUsedMemory(); final long maxMemory = memoryInformations.getMaxMemory(); final Phrase memoryPhrase = new Phrase( integerFormat.format(usedMemory / 1024 / 1024) + ' ' + getString("Mo") + DIVIDE + integerFormat.format(maxMemory / 1024 / 1024) + ' ' + getString("Mo") + BAR_SEPARATOR, cellFont);//from w w w.j ava2 s .co m final Image memoryImage = Image .getInstance(Bar.toBarWithAlert(memoryInformations.getUsedMemoryPercentage()), null); memoryImage.scalePercent(50); memoryPhrase.add(new Chunk(memoryImage, 0, 0)); currentTable.addCell(memoryPhrase); if (javaInformations.getSessionCount() >= 0) { addCell(getString("nb_sessions_http") + ':'); addCell(integerFormat.format(javaInformations.getSessionCount())); } addCell(getString("nb_threads_actifs") + "\n(" + getString("Requetes_http_en_cours") + "):"); addCell(integerFormat.format(javaInformations.getActiveThreadCount())); if (!noDatabase) { addCell(getString("nb_connexions_actives") + ':'); addCell(integerFormat.format(javaInformations.getActiveConnectionCount())); addCell(getString("nb_connexions_utilisees") + "\n(" + getString("ouvertes") + "):"); final int usedConnectionCount = javaInformations.getUsedConnectionCount(); final int maxConnectionCount = javaInformations.getMaxConnectionCount(); if (maxConnectionCount <= 0) { addCell(integerFormat.format(usedConnectionCount)); } else { final Phrase usedConnectionCountPhrase = new Phrase(integerFormat.format(usedConnectionCount) + DIVIDE + integerFormat.format(maxConnectionCount) + BAR_SEPARATOR, cellFont); final Image usedConnectionCountImage = Image .getInstance(Bar.toBarWithAlert(javaInformations.getUsedConnectionPercentage()), null); usedConnectionCountImage.scalePercent(50); usedConnectionCountPhrase.add(new Chunk(usedConnectionCountImage, 0, 0)); currentTable.addCell(usedConnectionCountPhrase); } } if (javaInformations.getSystemLoadAverage() >= 0) { addCell(getString("Charge_systeme") + ':'); addCell(decimalFormat.format(javaInformations.getSystemLoadAverage())); } if (javaInformations.getSystemCpuLoad() >= 0) { addCell(getString("systemCpuLoad") + ':'); final Phrase systemCpuLoadPhrase = new Phrase( decimalFormat.format(javaInformations.getSystemCpuLoad()) + BAR_SEPARATOR, cellFont); final Image systemCpuLoadImage = Image .getInstance(Bar.toBarWithAlert(javaInformations.getSystemCpuLoad()), null); systemCpuLoadImage.scalePercent(50); systemCpuLoadPhrase.add(new Chunk(systemCpuLoadImage, 0, 0)); currentTable.addCell(systemCpuLoadPhrase); } }
From source file:net.bull.javamelody.internal.web.pdf.PdfJavaInformationsReport.java
License:Apache License
private void writeDetails(JavaInformations javaInformations) throws BadElementException, IOException { addCell(getString("OS") + ':'); final Phrase osPhrase = new Phrase("", cellFont); final String osIconName = HtmlJavaInformationsReport.getOSIconName(javaInformations.getOS()); final String separator = " "; if (osIconName != null) { final Image osImage = PdfDocumentFactory.getImage("servers/" + osIconName); osImage.scalePercent(40); osPhrase.add(new Chunk(osImage, 0, 0)); osPhrase.add(separator);//from w w w . ja v a 2 s. c o m } osPhrase.add(javaInformations.getOS() + " (" + javaInformations.getAvailableProcessors() + ' ' + getString("coeurs") + ')'); currentTable.addCell(osPhrase); addCell(getString("Java") + ':'); addCell(javaInformations.getJavaVersion()); addCell(getString("JVM") + ':'); final Phrase jvmVersionPhrase = new Phrase(javaInformations.getJvmVersion(), cellFont); if (javaInformations.getJvmVersion().contains("Client")) { jvmVersionPhrase.add(separator); final Image alertImage = PdfDocumentFactory.getImage("alert.png"); alertImage.scalePercent(50); jvmVersionPhrase.add(new Chunk(alertImage, 0, -2)); } currentTable.addCell(jvmVersionPhrase); addCell(getString("PID") + ':'); addCell(javaInformations.getPID()); if (javaInformations.getUnixOpenFileDescriptorCount() >= 0) { writeFileDescriptorCounts(javaInformations); } final String serverInfo = javaInformations.getServerInfo(); if (serverInfo != null) { writeServerInfo(serverInfo); addCell(getString("Contexte_webapp") + ':'); addCell(javaInformations.getContextPath()); } addCell(getString("Demarrage") + ':'); addCell(I18N.createDateAndTimeFormat().format(javaInformations.getStartDate())); addCell(getString("Arguments_JVM") + ':'); addCell(javaInformations.getJvmArguments()); if (javaInformations.getSessionCount() >= 0) { addCell(getString("httpSessionsMeanAge") + ':'); addCell(integerFormat.format(javaInformations.getSessionMeanAgeInMinutes())); } writeTomcatInformations(javaInformations.getTomcatInformationsList()); addCell(getString("Gestion_memoire") + ':'); writeMemoryInformations(javaInformations.getMemoryInformations()); if (javaInformations.getFreeDiskSpaceInTemp() >= 0) { // on considre que l'espace libre sur le disque dur est celui sur la partition du rpertoire temporaire addCell(getString("Free_disk_space") + ':'); addCell(integerFormat.format(javaInformations.getFreeDiskSpaceInTemp() / 1024 / 1024) + ' ' + getString("Mo")); } writeDatabaseVersionAndDataSourceDetails(javaInformations); addCell(""); addCell(""); }
From source file:net.bull.javamelody.internal.web.pdf.PdfJavaInformationsReport.java
License:Apache License
private void writeServerInfo(String serverInfo) throws BadElementException, IOException { addCell(getString("Serveur") + ':'); final Phrase serverInfoPhrase = new Phrase("", cellFont); final String applicationServerIconName = HtmlJavaInformationsReport .getApplicationServerIconName(serverInfo); if (applicationServerIconName != null) { final Image applicationServerImage = PdfDocumentFactory .getImage("servers/" + applicationServerIconName); applicationServerImage.scalePercent(40); serverInfoPhrase.add(new Chunk(applicationServerImage, 0, 0)); serverInfoPhrase.add(" "); }//w w w.j a v a2s .c o m serverInfoPhrase.add(serverInfo); currentTable.addCell(serverInfoPhrase); }
From source file:net.bull.javamelody.internal.web.pdf.PdfJavaInformationsReport.java
License:Apache License
private void writeFileDescriptorCounts(JavaInformations javaInformations) throws BadElementException, IOException { final long unixOpenFileDescriptorCount = javaInformations.getUnixOpenFileDescriptorCount(); final long unixMaxFileDescriptorCount = javaInformations.getUnixMaxFileDescriptorCount(); addCell(getString("nb_fichiers") + ':'); final Phrase fileDescriptorCountPhrase = new Phrase(integerFormat.format(unixOpenFileDescriptorCount) + DIVIDE + integerFormat.format(unixMaxFileDescriptorCount) + BAR_SEPARATOR, cellFont); final Image fileDescriptorCountImage = Image .getInstance(Bar.toBarWithAlert(javaInformations.getUnixOpenFileDescriptorPercentage()), null); fileDescriptorCountImage.scalePercent(50); fileDescriptorCountPhrase.add(new Chunk(fileDescriptorCountImage, 0, 0)); currentTable.addCell(fileDescriptorCountPhrase); }
From source file:net.bull.javamelody.internal.web.pdf.PdfJavaInformationsReport.java
License:Apache License
private void writeTomcatInformations(List<TomcatInformations> tomcatInformationsList) throws BadElementException, IOException { for (final TomcatInformations tomcatInformations : tomcatInformationsList) { if (tomcatInformations.getRequestCount() <= 0) { continue; }//w w w. ja v a2s . co m addCell("Tomcat " + tomcatInformations.getName() + ':'); // rq: on n'affiche pas pour l'instant getCurrentThreadCount final int currentThreadsBusy = tomcatInformations.getCurrentThreadsBusy(); final String equal = " = "; final Phrase phrase = new Phrase( getString("busyThreads") + equal + integerFormat.format(currentThreadsBusy) + DIVIDE + integerFormat.format(tomcatInformations.getMaxThreads()) + BAR_SEPARATOR, cellFont); final Image threadsImage = Image.getInstance( Bar.toBarWithAlert(100d * currentThreadsBusy / tomcatInformations.getMaxThreads()), null); threadsImage.scalePercent(50); phrase.add(new Chunk(threadsImage, 0, 0)); phrase.add(new Chunk('\n' + getString("bytesReceived") + equal + integerFormat.format(tomcatInformations.getBytesReceived()) + '\n' + getString("bytesSent") + equal + integerFormat.format(tomcatInformations.getBytesSent()) + '\n' + getString("requestCount") + equal + integerFormat.format(tomcatInformations.getRequestCount()) + '\n' + getString("errorCount") + equal + integerFormat.format(tomcatInformations.getErrorCount()) + '\n' + getString("processingTime") + equal + integerFormat.format(tomcatInformations.getProcessingTime()) + '\n' + getString("maxProcessingTime") + equal + integerFormat.format(tomcatInformations.getMaxTime()))); currentTable.addCell(phrase); } }
From source file:net.bull.javamelody.internal.web.pdf.PdfJavaInformationsReport.java
License:Apache License
private void writeMemoryInformations(MemoryInformations memoryInformations) throws BadElementException, IOException { addCell(memoryInformations.getMemoryDetails().replace(" Mo", ' ' + getString("Mo"))); final long usedPermGen = memoryInformations.getUsedPermGen(); if (usedPermGen > 0) { // perm gen est 0 sous jrockit final long maxPermGen = memoryInformations.getMaxPermGen(); addCell(getString("Memoire_Perm_Gen") + ':'); if (maxPermGen > 0) { final Phrase permGenPhrase = new Phrase(integerFormat.format(usedPermGen / 1024 / 1024) + ' ' + getString("Mo") + DIVIDE + integerFormat.format(maxPermGen / 1024 / 1024) + ' ' + getString("Mo") + BAR_SEPARATOR, cellFont); final Image permGenImage = Image .getInstance(Bar.toBarWithAlert(memoryInformations.getUsedPermGenPercentage()), null); permGenImage.scalePercent(50); permGenPhrase.add(new Chunk(permGenImage, 0, 0)); currentTable.addCell(permGenPhrase); } else {// ww w. jav a2 s . c om addCell(integerFormat.format(usedPermGen / 1024 / 1024) + ' ' + getString("Mo")); } } }
From source file:net.bull.javamelody.internal.web.pdf.PdfJobInformationsReport.java
License:Apache License
private void writeJobTimes(JobInformations jobInformations, CounterRequest counterRequest) throws BadElementException, IOException { final long elapsedTime = jobInformations.getElapsedTime(); if (elapsedTime >= 0) { final Phrase elapsedTimePhrase = new Phrase(durationFormat.format(elapsedTime), cellFont); final Image memoryImage = Image.getInstance(Bar.toBar(100d * elapsedTime / counterRequest.getMean()), null);/*from www . j av a2 s . co m*/ memoryImage.scalePercent(47); elapsedTimePhrase.add("\n"); elapsedTimePhrase.add(new Chunk(memoryImage, 0, 0)); addCell(elapsedTimePhrase); } else { addCell(""); } if (jobInformations.getPreviousFireTime() != null) { addCell(fireTimeFormat.format(jobInformations.getPreviousFireTime())); } else { addCell(""); } if (jobInformations.getNextFireTime() != null) { addCell(fireTimeFormat.format(jobInformations.getNextFireTime())); } else { addCell(""); } // on n'affiche pas la priode si >= 1 jour car ce formateur ne saurait pas l'afficher if (jobInformations.getRepeatInterval() > 0 && jobInformations.getRepeatInterval() < ONE_DAY_MILLIS) { addCell(durationFormat.format(new Date(jobInformations.getRepeatInterval()))); } else if (jobInformations.getCronExpression() != null) { addCell(jobInformations.getCronExpression()); } else { addCell(""); } }
From source file:net.bull.javamelody.internal.web.pdf.PdfRequestAndGraphDetailReport.java
License:Apache License
private void writeGraph() throws IOException, DocumentException { final JRobin jrobin = collector.getJRobin(graphName); if (jrobin != null) { final byte[] img = jrobin.graph(range, 960, 400); final Image image = Image.getInstance(img); image.scalePercent(50); final PdfPTable table = new PdfPTable(1); table.setHorizontalAlignment(Element.ALIGN_CENTER); table.setWidthPercentage(100);/* w w w. ja va 2 s . c o m*/ table.getDefaultCell().setBorder(0); table.addCell("\n"); table.addCell(image); table.getDefaultCell().setHorizontalAlignment(Element.ALIGN_RIGHT); table.addCell(new Phrase(getString("graph_units"), cellFont)); addToDocument(table); } else { // just in case request is null and collector.getJRobin(graphName) is null, we must write something in the document addToDocument(new Phrase("\n", cellFont)); } }
From source file:net.bull.javamelody.internal.web.pdf.PdfSessionInformationsReport.java
License:Apache License
private Image getImageByFileName(String fileName) throws BadElementException, IOException { assert fileName != null; Image image = imagesByFileName.get(fileName); if (image == null) { if (getClass().getResource(Parameters.getResourcePath(fileName)) == null) { return null; }/*from w ww . ja v a 2 s . c o m*/ image = PdfDocumentFactory.getImage(fileName); image.scalePercent(40); imagesByFileName.put(fileName, image); } return image; }
From source file:net.bull.javamelody.PdfCoreReport.java
License:Apache License
private void writeGraphs(Collection<JRobin> jrobins, Map<String, byte[]> mySmallGraphs) throws IOException, DocumentException { if (collector.isStopped()) { // pas de graphs, ils seraient en erreur sans timer // mais un message d'avertissement la place final String message = getString("collect_server_misusage"); final Paragraph jrobinParagraph = new Paragraph(message, PdfFonts.BOLD.getFont()); jrobinParagraph.setAlignment(Element.ALIGN_CENTER); addToDocument(jrobinParagraph);//from w w w . jav a2 s. com return; } final Paragraph jrobinParagraph = new Paragraph("", FontFactory.getFont(FontFactory.HELVETICA, 9f, Font.NORMAL)); jrobinParagraph.setAlignment(Element.ALIGN_CENTER); jrobinParagraph.add(new Phrase("\n\n\n\n")); int i = 0; if (mySmallGraphs != null) { // si les graphiques ont t prinitialiss (en Swing) alors on les utilise for (final byte[] imageData : mySmallGraphs.values()) { if (i % 3 == 0 && i != 0) { // un retour aprs httpSessions et avant activeThreads pour l'alignement jrobinParagraph.add(new Phrase("\n\n\n\n\n")); } final Image image = Image.getInstance(imageData); image.scalePercent(50); jrobinParagraph.add(new Phrase(new Chunk(image, 0, 0))); jrobinParagraph.add(new Phrase(" ")); i++; } } else { if (jrobins.isEmpty()) { return; } for (final JRobin jrobin : jrobins) { if (i % 3 == 0 && i != 0) { // un retour aprs httpSessions et avant activeThreads pour l'alignement jrobinParagraph.add(new Phrase("\n\n\n\n\n")); } final Image image = Image.getInstance(jrobin.graph(range, SMALL_GRAPH_WIDTH, SMALL_GRAPH_HEIGHT)); image.scalePercent(50); jrobinParagraph.add(new Phrase(new Chunk(image, 0, 0))); jrobinParagraph.add(new Phrase(" ")); i++; } } jrobinParagraph.add(new Phrase("\n")); addToDocument(jrobinParagraph); }