List of usage examples for javax.imageio ImageIO write
public static boolean write(RenderedImage im, String formatName, OutputStream output) throws IOException
From source file:csns.util.ImageUtils.java
public File resize(File file, int targetSize, boolean always) { File newFile = null;/*from w w w . j a v a 2s . c o m*/ try { BufferedImage image = ImageIO.read(fileIO.getDiskFile(file)); if (!always && image.getWidth() < targetSize && image.getHeight() < targetSize) return file; BufferedImage newImage = Scalr.resize(image, targetSize); java.io.File tempFile = java.io.File.createTempFile("temp", null); ImageIO.write(newImage, "jpg", tempFile); newFile = new File(); newFile.setName(file.getName() + "_" + targetSize + ".jpg"); newFile.setType("image/jpeg"); newFile.setSize(tempFile.length()); newFile.setOwner(file.getOwner()); newFile.setParent(file.getParent()); newFile.setPublic(file.isPublic()); newFile = fileDao.saveFile(newFile); tempFile.renameTo(fileIO.getDiskFile(newFile, false)); } catch (IOException e) { logger.error("Fail to resize image " + file.getName(), e); } return newFile; }
From source file:edworld.pdfreader4humans.PDFReaderTest.java
@Test public void createPageImageWithoutStructure() throws IOException { File outputFile = new File("target/outputWithoutStructure.png"); ImageIO.write(reader.createPageImage(1, 3, Color.BLACK, Color.WHITE, false), "png", outputFile); assertImagesAreSimilar(getClass().getResourceAsStream("/testcase1/outputWithoutStructure.png"), ImageIO.read(outputFile)); }
From source file:de.appsolve.padelcampus.utils.FileUtil.java
public Image save(String contentType, BufferedImage bufferedImage, ImageCategory category) throws IOException, ImageProcessingException { try (ByteArrayOutputStream baos = new ByteArrayOutputStream()) { //convert buffered image to byte array ImageIO.write(bufferedImage, "png", baos); baos.flush();/*from www. j a v a 2s . co m*/ byte[] byteArray = baos.toByteArray(); return save(contentType, byteArray, category, bufferedImage.getWidth(), bufferedImage.getHeight()); } }
From source file:cz.zcu.pia.social.network.backend.services.FileService.java
public void resizeImage(File file) throws IOException, IllegalArgumentException { //Scale the image String ext = FilenameUtils.getExtension(file.getName()); BufferedImage resizedImage = Scalr.resize(ImageIO.read(file), Constants.PROFILE_IMAGE_SIZE); ImageIO.write(resizedImage, ext, new File(Constants.BASE_PATH_RESIZED + file.getName())); File resizedFile = new File(Constants.BASE_PATH_RESIZED + file.getName()); if (securityHelper.getLogedInUser().getUserImageName() != null) { new File(Constants.BASE_PATH_RESIZED + securityHelper.getLogedInUser().getUserImageName()).delete(); }/* ww w.ja v a2s . com*/ securityHelper.getLogedInUser().setUserImageName(resizedFile.getName()); usersService.update(securityHelper.getLogedInUser()); file.delete(); }
From source file:com.webpagebytes.cms.DefaultImageProcessor.java
public boolean resizeImage(WPBFileStorage cloudStorage, WPBFilePath cloudFile, int desiredSize, String outputFormat, OutputStream os) throws WPBException { InputStream is = null;/* w w w .j a v a 2 s. co m*/ try { //get the file content WPBFileInfo fileInfo = cloudStorage.getFileInfo(cloudFile); String type = fileInfo.getContentType().toLowerCase(); if (!type.startsWith("image")) { return false; } is = cloudStorage.getFileContent(cloudFile); BufferedImage bufImg = ImageIO.read(is); Dimension<Integer> newSize = getResizeSize(bufImg.getWidth(), bufImg.getHeight(), desiredSize); BufferedImage bdest = new BufferedImage(newSize.getX(), newSize.getY(), BufferedImage.TYPE_INT_RGB); Graphics2D g = bdest.createGraphics(); Dimension<Double> scale = getResizeScale(bufImg.getHeight(), bufImg.getWidth(), desiredSize); AffineTransform at = AffineTransform.getScaleInstance(scale.getX(), scale.getY()); g.drawRenderedImage(bufImg, at); ImageIO.write(bdest, outputFormat, os); return true; } catch (Exception e) { throw new WPBException("Cannot resize image ", e); } finally { IOUtils.closeQuietly(is); } }
From source file:com.betel.flowers.web.bean.util.UploadFileRun.java
@Override public void run() { Boolean succesefull = Boolean.FALSE; Path path = Paths.get(url); //if directory exists? if (!Files.exists(path)) { try {//from www . ja va 2 s .co m Files.createDirectories(path); log.log(Level.INFO, "Directory is created!"); } catch (IOException e) { //fail to create directory log.log(Level.SEVERE, "Failed to create directory! " + e.getMessage()); } } File fileDelete = new File(url + name + "." + ext); if (fileDelete.delete()) { log.log(Level.INFO, "Se elimino el archivo: " + url + name + "." + ext); } else { log.log(Level.INFO, "No se elimino el archivo: " + url + name + "." + ext); } File file = new File(url + name + "." + ext); try { byte[] imgbytes = IOUtils.toByteArray(input); InputStream in = new ByteArrayInputStream(imgbytes); BufferedImage bImageFromConvert = ImageIO.read(in); ImageIO.write(bImageFromConvert, ext, file); succesefull = Boolean.TRUE; } catch (IOException e) { log.log(Level.SEVERE, "Error al guardar la imagen en:" + file.getPath(), e); } if (succesefull) { try { this.finalize(); this.exito = true; } catch (Throwable ex) { log.log(Level.SEVERE, "Error al procesar imagen", ex); } } else { this.interrupt(); this.exito = false; } }
From source file:net.sourceforge.atunes.misc.TempFolder.java
public File writeImageToTempFolder(RenderedImage image, String fileName) { try {//w w w .java 2s. c om File file = new File(SystemProperties.getTempFolder(), fileName); ImageIO.write(image, "png", file); return file; } catch (IOException e) { return null; } }
From source file:com.tapas.evidence.fe.controller.CaptchaController.java
@RequestMapping("/captcha.jpg") public void showForm(HttpServletRequest request, HttpServletResponse response) throws Exception { byte[] captchaChallengeAsJpeg = null; // the output stream to render the captcha image as jpeg into ByteArrayOutputStream jpegOutputStream = new ByteArrayOutputStream(); try {//from w w w. ja v a 2 s . c o m // get the session id that will identify the generated captcha. // the same id must be used to validate the response, the session id is a good candidate! String captchaId = request.getSession().getId(); BufferedImage challenge = captchaService.getImageChallengeForID(captchaId, request.getLocale()); ImageIO.write(challenge, CAPTCHA_IMAGE_FORMAT, jpegOutputStream); } catch (IllegalArgumentException e) { response.sendError(HttpServletResponse.SC_NOT_FOUND); return; } catch (CaptchaServiceException e) { response.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR); return; } captchaChallengeAsJpeg = jpegOutputStream.toByteArray(); // flush it in the response response.setHeader("Cache-Control", "no-store"); response.setHeader("Pragma", "no-cache"); response.setDateHeader("Expires", 0); response.setContentType("image/" + CAPTCHA_IMAGE_FORMAT); ServletOutputStream responseOutputStream = response.getOutputStream(); responseOutputStream.write(captchaChallengeAsJpeg); responseOutputStream.flush(); responseOutputStream.close(); }
From source file:dinamica.ChartOutput.java
public void print(GenericTransaction t) throws Throwable { //get chart parameters Recordset chartinfo = t.getRecordset("chartinfo"); //get chart data String id = chartinfo.getString("data"); Recordset data = (Recordset) getSession().getAttribute(id); if (data == null) throw new Throwable( "Invalid Recordset ID:" + id + " - The session does not contain an attribute with this ID."); //general chart params Integer width = (Integer) chartinfo.getValue("width"); Integer height = (Integer) chartinfo.getValue("height"); //load chart plugin String plugin = (String) chartinfo.getValue("chart-plugin"); AbstractChartPlugin obj = (AbstractChartPlugin) Thread.currentThread().getContextClassLoader() .loadClass(plugin).newInstance(); JFreeChart chart = obj.getChart(chartinfo, data); //set gradient chart.setBackgroundPaint(getGradient()); //set border and legend params chart.setBorderPaint(Color.LIGHT_GRAY); chart.setBorderVisible(true);/*ww w. ja v a2s. co m*/ if (chart.getLegend() != null) { chart.getLegend().setBorder(0.2, 0.2, 0.2, 0.2); chart.getLegend().setPadding(5, 5, 5, 5); chart.getLegend().setMargin(4, 5, 4, 4); } //render chart in memory BufferedImage img = chart.createBufferedImage(width.intValue(), height.intValue()); ByteArrayOutputStream b = new ByteArrayOutputStream(32768); //encode as PNG ImageIO.write(img, "png", b); //send bitmap via servlet output byte image[] = b.toByteArray(); getResponse().setContentType("image/png"); getResponse().setContentLength(image.length); OutputStream out = getResponse().getOutputStream(); out.write(image); out.close(); //save image bytes in session attribute if requested if (chartinfo.containsField("session")) { String session = chartinfo.getString("session"); if (session != null && session.equals("true")) getSession().setAttribute(chartinfo.getString("image-id"), image); } }
From source file:com.alibaba.webx.tutorial.app1.module.screen.simple.SayHiImage.java
private void writeImage(OutputStream out) throws IOException { BufferedImage img = new BufferedImage(800, 600, BufferedImage.TYPE_INT_RGB); Graphics2D g2d = img.createGraphics(); g2d.setPaint(Color.red);//from w w w.j ava2 s .c o m g2d.setFont(new Font("Serif", Font.BOLD, 36)); g2d.drawString("Hi there, how are you doing today?", 5, g2d.getFontMetrics().getHeight()); g2d.dispose(); ImageIO.write(img, "jpg", out); }