List of usage examples for javax.imageio ImageIO write
public static boolean write(RenderedImage im, String formatName, OutputStream output) throws IOException
From source file:net.cloudkit.relaxation.VerifyImage.java
private void unknowToImage(BufferedImage image, String name) { try {/* ww w . ja v a2 s.co m*/ ImageIO.write(image, "bmp", new File(name)); } catch (IOException var4) { var4.printStackTrace(); } }
From source file:com.netsteadfast.greenstep.bsc.command.ObjectivesDashboardExcelCommand.java
@SuppressWarnings("unchecked") private int putCharts(XSSFWorkbook wb, XSSFSheet sh, Context context) throws Exception { String barBase64Content = SimpleUtils.getPNGBase64Content((String) context.get("barChartsData")); BufferedImage barImage = SimpleUtils.decodeToImage(barBase64Content); ByteArrayOutputStream barBos = new ByteArrayOutputStream(); ImageIO.write(barImage, "png", barBos); barBos.flush();/*from w w w . j a v a2 s .c o m*/ SimpleUtils.setCellPicture(wb, sh, barBos.toByteArray(), 0, 0); int row = 28; List<Map<String, Object>> chartDatas = (List<Map<String, Object>>) context.get("chartDatas"); String year = (String) context.get("year"); XSSFCellStyle cellHeadStyle = wb.createCellStyle(); cellHeadStyle.setFillForegroundColor(new XSSFColor(SimpleUtils.getColorRGB4POIColor("#f5f5f5"))); cellHeadStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND); XSSFFont cellHeadFont = wb.createFont(); cellHeadFont.setBold(true); cellHeadStyle.setFont(cellHeadFont); int titleCellSize = 14; Row headRow = sh.createRow(row); for (int i = 0; i < titleCellSize; i++) { Cell headCell = headRow.createCell(i); headCell.setCellStyle(cellHeadStyle); headCell.setCellValue("Objectives metrics gauge ( " + year + " )"); } sh.addMergedRegion(new CellRangeAddress(row, row, 0, titleCellSize - 1)); row = row + 1; int cellLeft = 10; int rowSpace = 17; for (Map<String, Object> data : chartDatas) { Map<String, Object> nodeData = (Map<String, Object>) ((List<Object>) data.get("datas")).get(0); String pngImageData = SimpleUtils.getPNGBase64Content((String) nodeData.get("outerHTML")); BufferedImage imageData = SimpleUtils.decodeToImage(pngImageData); ByteArrayOutputStream imgBos = new ByteArrayOutputStream(); ImageIO.write(imageData, "png", imgBos); imgBos.flush(); SimpleUtils.setCellPicture(wb, sh, imgBos.toByteArray(), row, 0); XSSFColor bgColor = new XSSFColor(SimpleUtils.getColorRGB4POIColor((String) nodeData.get("bgColor"))); XSSFColor fnColor = new XSSFColor(SimpleUtils.getColorRGB4POIColor((String) nodeData.get("fontColor"))); XSSFCellStyle cellStyle = wb.createCellStyle(); cellStyle.setFillForegroundColor(bgColor); cellStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND); XSSFFont cellFont = wb.createFont(); cellFont.setBold(true); cellFont.setColor(fnColor); cellStyle.setFont(cellFont); int perTitleCellSize = 4; Row nowRow = sh.createRow(row); for (int i = 0; i < perTitleCellSize; i++) { Cell cell1 = nowRow.createCell(cellLeft); cell1.setCellStyle(cellStyle); cell1.setCellValue((String) nodeData.get("name")); } sh.addMergedRegion(new CellRangeAddress(row, row, cellLeft, cellLeft + perTitleCellSize - 1)); nowRow = sh.createRow(row + 1); Cell cell2 = nowRow.createCell(cellLeft); cell2.setCellValue("Target: " + String.valueOf(nodeData.get("target"))); nowRow = sh.createRow(row + 2); Cell cell3 = nowRow.createCell(cellLeft); cell3.setCellValue("Min: " + String.valueOf(nodeData.get("min"))); nowRow = sh.createRow(row + 3); Cell cell4 = nowRow.createCell(cellLeft); cell4.setCellValue("Score: " + String.valueOf(nodeData.get("score"))); row += rowSpace; } return row; }
From source file:zz.pseas.ghost.login.weibo.SinaWeiboLogin.java
public static String getSinaCookie(String username, String password) throws Exception { StringBuilder sb = new StringBuilder(); HtmlUnitDriver driver = new HtmlUnitDriver(true); // driver.setSocksProxy("127.0.0.1", 1080); // driver.setProxy("127.0.0.1", 1080); // HtmlOption htmlOption=new Ht // WebDriver driver = new FirefoxDriver(); driver.setJavascriptEnabled(true);/*from www . j a v a 2s . c o m*/ // user agent switcher// String loginAddress = "http://login.weibo.cn/login/"; driver.get(loginAddress); WebElement ele = driver.findElementByCssSelector("img"); String src = ele.getAttribute("src"); String cookie = concatCookie(driver); CloseableHttpClient httpclient = HttpClients.createDefault(); RequestConfig requestConfig = RequestConfig.custom().setSocketTimeout(1000).setConnectTimeout(1000) .setCookieSpec(cookie).build(); HttpGet httpget = new HttpGet(src); httpget.setConfig(requestConfig); CloseableHttpResponse response = httpclient.execute(httpget); HttpEntity entity; String result = null; try { if (response.getStatusLine().getStatusCode() != HttpURLConnection.HTTP_OK) { // try again// } entity = response.getEntity(); if (entity != null) { InputStream instream = entity.getContent(); try { // do something useful InputStream inputStream = entity.getContent(); BufferedImage img = ImageIO.read(inputStream); // deal with the weibo captcha // String picName = LoginUtils.getCurrentTime("yyyyMMdd-hhmmss"); // captcha// LoginUtils.getCaptchaDir(); picName = "./captcha/captcha-" + picName + ".png"; ImageIO.write(img, "png", new File(picName)); String userInput = new CaptchaFrame(img).getUserInput(); WebElement mobile = driver.findElementByCssSelector("input[name=mobile]"); mobile.sendKeys(username); WebElement pass = driver.findElementByCssSelector("input[name^=password]"); pass.sendKeys(password); WebElement code = driver.findElementByCssSelector("input[name=code]"); code.sendKeys(userInput); WebElement rem = driver.findElementByCssSelector("input[name=remember]"); rem.click(); WebElement submit = driver.findElementByCssSelector("input[name=submit]"); // ?// submit.click(); result = concatCookie(driver); driver.close(); } finally { instream.close(); } } } finally { response.close(); } if (result.contains("gsid_CTandWM")) { return result; } else { // throw new Exception("weibo login failed"); return null; } }
From source file:juicebox.tools.utils.juicer.apa.APAPlotter.java
/** * Method for plotting apa data// w ww . java 2 s .c o m * * @param data for heat map * @param axesRange initial values and increments to annotate axes [x0, dx, y0, dy] * @param outputFile where image will saved */ public static void plot(RealMatrix data, int[] axesRange, File outputFile, String title) { APARegionStatistics apaStats = new APARegionStatistics(data); DecimalFormat df = new DecimalFormat("0.000"); title += ", P2LL = " + df.format(apaStats.getPeak2LL()); // initialize heat map HeatChart map = new HeatChart(data.getData()); map.setLowValueColour(Color.WHITE); map.setHighValueColour(Color.RED); map.setXValues(axesRange[0], axesRange[1]); map.setYValues(axesRange[2], axesRange[3]); map.setTitle(title); try { // calculate dimensions for plot wrapper initializeSizes(map); // create blank white image BufferedImage apaImage = new BufferedImage(fullWidth, fullHeight, BufferedImage.TYPE_INT_ARGB); Graphics2D g2 = apaImage.createGraphics(); g2.setBackground(Color.WHITE); g2.fillRect(0, 0, fullWidth, fullHeight); // plot in heat map, color bar, etc g2.drawImage(map.getChartImage(), 0, 0, heatmapWidth, fullHeight, null); drawHeatMapBorder(g2, map); plotColorScaleBar(g2); plotColorScaleValues(g2, map); // top left, top right, bottom left, bottom right values (from apa) drawCornerRegions(g2, map, new Dimension(APA.regionWidth, APA.regionWidth), apaStats.getRegionCornerValues()); // save data ImageIO.write(apaImage, "png", outputFile); } catch (IOException e) { e.printStackTrace(); } }
From source file:info.novatec.testit.livingdoc.confluence.macros.historic.AbstractChartBuilder.java
@SuppressWarnings("deprecation") protected String getDownloadPath(BufferedImage chartImage) throws IOException { File imageOutputFile = ExportDownload.createTempFile("chart", ".png"); ImageIO.write(chartImage, "png", imageOutputFile); return ExportDownload.getUrl(imageOutputFile, "image/png"); }
From source file:com.baidu.rigel.biplatform.ma.auth.resource.RandomValidateCode.java
/** * //from w w w .j a v a2 s. c om * @param request * @param response * @param cacheManagerForResource */ public static void getRandcode(HttpServletRequest request, HttpServletResponse response, CacheManagerForResource cacheManagerForResource) { // BufferedImageImage,Image???? BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_BGR); Graphics g = image.getGraphics(); // ImageGraphics,????? g.fillRect(0, 0, width, height); g.setFont(new Font("Times New Roman", Font.ROMAN_BASELINE, 18)); g.setColor(getRandColor(110, 133)); // for (int i = 0; i <= lineSize; i++) { drowLine(g); } // ? String randomString = ""; for (int i = 1; i <= stringNum; i++) { randomString = drowString(g, randomString, i); } String key = null; if (request.getCookies() != null) { for (Cookie tmp : request.getCookies()) { if (tmp.getName().equals(Constants.RANDOMCODEKEY)) { key = tmp.getName(); cacheManagerForResource.removeFromCache(key); break; } } } if (StringUtils.isEmpty(key)) { key = String.valueOf(System.nanoTime()); } cacheManagerForResource.setToCache(key, randomString); final Cookie cookie = new Cookie(Constants.RANDOMCODEKEY, key); cookie.setPath(Constants.COOKIE_PATH); response.addCookie(cookie); g.dispose(); try { ImageIO.write(image, "JPEG", response.getOutputStream()); // ?? } catch (Exception e) { LOG.info(e.getMessage()); } }
From source file:Result3.java
public void createImageJPG() { JFileChooser chooser = new JFileChooser(); chooser.setCurrentDirectory(new File("Documents")); int retrival = chooser.showSaveDialog(null); if (retrival == JFileChooser.APPROVE_OPTION) { try {/* w w w .ja v a2 s .c om*/ ImageIO.write(bImage1, "jpg", new File(chooser.getSelectedFile() + ".jpg")); } catch (IOException ex) { Logger.getLogger(Result1.class.getName()).log(Level.SEVERE, null, ex); } } }
From source file:kz.supershiny.core.services.ImageService.java
/** * Creates thumb for image./*from w w w.java 2 s .c o m*/ * * @param originalData original image in byte array * @param type original - 0, large - 1, small - 2 * @return resized image in byte array */ public static byte[] resizeImage(byte[] originalData, ImageSize type) { //if original flag, then return original if (type.equals(ImageSize.ORIGINAL)) { return originalData; } BufferedImage originalImage = null; BufferedImage resizedImage = null; byte[] result = null; //convert bytes to BufferedImage try (InputStream in = new ByteArrayInputStream(originalData)) { originalImage = ImageIO.read(in); } catch (IOException ex) { LOG.error("Cannot convert byte array to BufferedImage!", ex); return null; } //get original size int scaledHeight = originalImage.getHeight(); int scaledWidth = originalImage.getWidth(); switch (type) { case LARGE: scaledWidth = LARGE_WIDTH; scaledHeight = LARGE_HEIGHT; break; case SMALL: scaledWidth = SMALL_WIDTH; scaledHeight = SMALL_HEIGHT; break; default: break; } //calculate aspect ratio float ratio = 1.0F * originalImage.getWidth() / originalImage.getHeight(); if (ratio > 1.0F) { scaledHeight = (int) (scaledHeight / ratio); } else { scaledWidth = (int) (scaledWidth * ratio); } //resize with hints resizedImage = new BufferedImage(scaledWidth, scaledHeight, originalImage.getType() == 0 ? BufferedImage.TYPE_INT_ARGB : originalImage.getType()); Graphics2D g = resizedImage.createGraphics(); g.drawImage(originalImage, 0, 0, scaledWidth, scaledHeight, null); g.dispose(); g.setComposite(AlphaComposite.Src); g.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR); g.setRenderingHint(RenderingHints.KEY_RENDERING, RenderingHints.VALUE_RENDER_QUALITY); g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); //convert BufferedImage to bytes try (ByteArrayOutputStream baos = new ByteArrayOutputStream()) { ImageIO.write(resizedImage, "png", baos); baos.flush(); result = baos.toByteArray(); } catch (IOException ex) { LOG.error("Cannot convert BufferedImage to byte array!", ex); } return result; }
From source file:hudson.util.Graph.java
/** * Renders a graph.//ww w . j a v a2s . c o m */ public void doPng(StaplerRequest req, StaplerResponse rsp) throws IOException { if (req.checkIfModified(timestamp, rsp)) return; try { BufferedImage image = render(req, null); rsp.setContentType("image/png"); ServletOutputStream os = rsp.getOutputStream(); ImageIO.write(image, "PNG", os); os.close(); } catch (Error e) { /* OpenJDK on ARM produces an error like this in case of headless error Caused by: java.lang.Error: Probable fatal error:No fonts found. at sun.font.FontManager.getDefaultPhysicalFont(FontManager.java:1088) at sun.font.FontManager.initialiseDeferredFont(FontManager.java:967) at sun.font.CompositeFont.doDeferredInitialisation(CompositeFont.java:254) at sun.font.CompositeFont.getSlotFont(CompositeFont.java:334) at sun.font.CompositeStrike.getStrikeForSlot(CompositeStrike.java:77) at sun.font.CompositeStrike.getFontMetrics(CompositeStrike.java:93) at sun.font.Font2D.getFontMetrics(Font2D.java:387) at java.awt.Font.defaultLineMetrics(Font.java:2082) at java.awt.Font.getLineMetrics(Font.java:2152) at org.jfree.chart.axis.NumberAxis.estimateMaximumTickLabelHeight(NumberAxis.java:974) at org.jfree.chart.axis.NumberAxis.selectVerticalAutoTickUnit(NumberAxis.java:1104) at org.jfree.chart.axis.NumberAxis.selectAutoTickUnit(NumberAxis.java:1048) at org.jfree.chart.axis.NumberAxis.refreshTicksVertical(NumberAxis.java:1249) at org.jfree.chart.axis.NumberAxis.refreshTicks(NumberAxis.java:1149) at org.jfree.chart.axis.ValueAxis.reserveSpace(ValueAxis.java:788) at org.jfree.chart.plot.CategoryPlot.calculateRangeAxisSpace(CategoryPlot.java:2650) at org.jfree.chart.plot.CategoryPlot.calculateAxisSpace(CategoryPlot.java:2669) at org.jfree.chart.plot.CategoryPlot.draw(CategoryPlot.java:2716) at org.jfree.chart.JFreeChart.draw(JFreeChart.java:1222) at org.jfree.chart.JFreeChart.createBufferedImage(JFreeChart.java:1396) at org.jfree.chart.JFreeChart.createBufferedImage(JFreeChart.java:1376) at org.jfree.chart.JFreeChart.createBufferedImage(JFreeChart.java:1361) at hudson.util.ChartUtil.generateGraph(ChartUtil.java:116) at hudson.util.ChartUtil.generateGraph(ChartUtil.java:99) at hudson.tasks.test.AbstractTestResultAction.doPng(AbstractTestResultAction.java:196) at hudson.tasks.test.TestResultProjectAction.doTrend(TestResultProjectAction.java:97) ... 37 more */ if (e.getMessage().contains("Probable fatal error:No fonts found")) { rsp.sendRedirect2(req.getContextPath() + "/images/headless.png"); return; } throw e; // otherwise let the caller deal with it } catch (HeadlessException e) { // not available. send out error message rsp.sendRedirect2(req.getContextPath() + "/images/headless.png"); } }
From source file:femr.business.services.system.PhotoService.java
private byte[] convertBufferedImageToByteArray(BufferedImage img) { if (img != null) { try {//ww w. j a v a2 s .c o m ByteArrayOutputStream baos = new ByteArrayOutputStream(); ImageIO.write(img, "jpg", baos); return baos.toByteArray(); } catch (Exception ex) { } } return null; }