Example usage for javax.imageio ImageIO read

List of usage examples for javax.imageio ImageIO read

Introduction

In this page you can find the example usage for javax.imageio ImageIO read.

Prototype

public static BufferedImage read(ImageInputStream stream) throws IOException 

Source Link

Document

Returns a BufferedImage as the result of decoding a supplied ImageInputStream with an ImageReader chosen automatically from among those currently registered.

Usage

From source file:org.ow2.clif.jenkins.chart.AbstractChart.java

public void doPng(File rootDir, StaplerRequest req, StaplerResponse rsp) throws IOException {

    File imageFile = getImageFile(rootDir);

    try {/*from w  ww . j  a v a2 s.  c  o  m*/
        BufferedImage bufferedImage = ImageIO.read(imageFile);
        rsp.setContentType("image/png");
        ServletOutputStream os = rsp.getOutputStream();
        ImageIO.write(bufferedImage, "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:com.ctsim.simemua_instructor.ACarControlPanelFrame.java

private void initImage() {
    try {//from ww w. ja  v a  2 s . c o  m
        aCarControlPanelImg = ImageIO.read(FileUtils
                .toFile(this.getClass().getClassLoader().getResource("img/layout_a-car_control_panel.png")));
        mainBreakerOnImg = ImageIO.read(
                FileUtils.toFile(this.getClass().getClassLoader().getResource("img/main_breaker_on.png")));
        mainBreakerOffImg = ImageIO.read(
                FileUtils.toFile(this.getClass().getClassLoader().getResource("img/main_breaker_off.png")));
        breakerOnImg = ImageIO
                .read(FileUtils.toFile(this.getClass().getClassLoader().getResource("img/breaker_on.png")));
        breakerOffImg = ImageIO
                .read(FileUtils.toFile(this.getClass().getClassLoader().getResource("img/breaker_off.png")));
        switchByPassOnImg = ImageIO.read(
                FileUtils.toFile(this.getClass().getClassLoader().getResource("img/switch_bypass_on.png")));
        switchByPassOffImg = ImageIO.read(
                FileUtils.toFile(this.getClass().getClassLoader().getResource("img/switch_bypass_off.png")));
        switchPBPermitOnImg = ImageIO.read(
                FileUtils.toFile(this.getClass().getClassLoader().getResource("img/switch_pb_permit_on.png")));
        switchPBPermitOffImg = ImageIO.read(
                FileUtils.toFile(this.getClass().getClassLoader().getResource("img/switch_pb_permit_off.png")));
        switchYesNoBlackOnImg = ImageIO.read(FileUtils
                .toFile(this.getClass().getClassLoader().getResource("img/switch_yes-no_black_on.png")));
        switchYesNoBlackOffImg = ImageIO.read(FileUtils
                .toFile(this.getClass().getClassLoader().getResource("img/switch_yes-no_black_off.png")));
        switchPBSquareBlackOnImg = ImageIO.read(FileUtils
                .toFile(this.getClass().getClassLoader().getResource("img/switch_pb_square_black_on.png")));
        switchPBSquareBlackOffImg = ImageIO.read(FileUtils
                .toFile(this.getClass().getClassLoader().getResource("img/switch_pb_square_black_off.png")));
        switchRotaryBlackIdleImg = ImageIO.read(FileUtils
                .toFile(this.getClass().getClassLoader().getResource("img/switch_rotary_black_idle.png")));
        switchRotaryYellowIdleOffImg = ImageIO.read(FileUtils
                .toFile(this.getClass().getClassLoader().getResource("img/switch_rotary_yellow_idle_off.png")));
        switchRotaryYellowOnImg = ImageIO.read(FileUtils
                .toFile(this.getClass().getClassLoader().getResource("img/switch_rotary_yellow_on.png")));
        switchRotaryYellowIdleOnImg = ImageIO.read(FileUtils
                .toFile(this.getClass().getClassLoader().getResource("img/switch_rotary_yellow_idle_on.png")));
        switchRotaryYellowOffImg = ImageIO.read(FileUtils
                .toFile(this.getClass().getClassLoader().getResource("img/switch_rotary_yellow_off.png")));
        lampRedOnImg = ImageIO
                .read(FileUtils.toFile(this.getClass().getClassLoader().getResource("img/lamp_red_on.png")));
        lampRedOffImg = ImageIO
                .read(FileUtils.toFile(this.getClass().getClassLoader().getResource("img/lamp_red_off.png")));
        lampYellowOnImg = ImageIO
                .read(FileUtils.toFile(this.getClass().getClassLoader().getResource("img/lamp_yellow_on.png")));
        lampYellowOffImg = ImageIO.read(
                FileUtils.toFile(this.getClass().getClassLoader().getResource("img/lamp_yellow_off.png")));

    } catch (IOException ex) {
        Logger.getLogger(ACarControlPanelFrame.class.getName()).log(Level.SEVERE, null, ex);
    }
}

From source file:ch.sportchef.business.event.control.EventImageService.java

public void uploadImage(@NotNull final Long eventId, @NotNull final byte[] image) throws IOException {
    final File file = new File(IMAGE_UPLOAD_PATH, String.format("%d%s", eventId, FILE_EXTENSION)); //NON-NLS
    file.createNewFile();/*w  ww.j  ava  2s . c  om*/
    try (final BufferedOutputStream outputStream = new BufferedOutputStream(new FileOutputStream(file), 8192)) {
        outputStream.write(image);
    }

    final String averageColor;
    final BufferedImage inputImage = ImageIO.read(file);
    final BufferedImage outputImage = ImageResizer.resizeAndCrop(inputImage, IMAGE_WIDTH, IMAGE_HEIGHT);
    ImageIO.write(outputImage, FILE_TYPE, file);
    averageColor = AverageColorCalculator.getAverageColorAsHex(outputImage);
    inputImage.flush();
    outputImage.flush();

    final Event event = eventService.findByEventId(eventId).get();
    final Event eventToUpdate = EventBuilder.fromEvent(event).withCssBackgroundColor(averageColor)
            .buildWithVersion();
    eventService.update(eventToUpdate);
}

From source file:com.modwiz.sponge.statue.utils.skins.SkinResolverService.java

public SkinResolverService(final File cacheDir) {
    checkNotNull(cacheDir);//from  www.  jav  a2 s .c  o m

    if (!cacheDir.exists()) {
        cacheDir.mkdirs();
    } else {
        File[] cachedSkins = cacheDir.listFiles(new FilenameFilter() {
            @Override
            public boolean accept(File dir, String name) {
                return name.endsWith(".json");
            }
        });
        JsonParser parser = new JsonParser();
        for (File file : cachedSkins) {
            try {
                JsonObject element = parser.parse(new FileReader(file)).getAsJsonObject();
                long now = new Date().getTime();
                long timestamp = element.get("timestamp").getAsLong();
                if (new Date(now - timestamp).getMinutes() <= 45) {
                    // Less than 45 minutes old
                    UUID uuid = UUID.fromString(element.get("uuid").getAsString());
                    BufferedImage texture = ImageIO.read(new File(String.format("%s.png", uuid.toString())));
                    MinecraftSkin.Type skinType = MinecraftSkin.Type.valueOf(element.get("type").getAsString());
                    MinecraftSkin skin = new MinecraftSkin(skinType, uuid, texture, timestamp);
                    skinCache.put(uuid, skin);
                }
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
    this.cacheDir = cacheDir;

    skinCache = new HashMap<UUID, MinecraftSkin>(100);
    skinLoader = new SkinLoader();
}

From source file:com.activiti.image.BpmnImageTest.java

protected void generateImage(BpmnModel bpmnModel, double scaleFactor) throws Exception {
    ProcessDiagramGenerator diagramGenerator = new DefaultProcessDiagramGenerator(scaleFactor);
    InputStream diagramStream = diagramGenerator.generatePngDiagram(bpmnModel, scaleFactor);
    FileOutputStream fileStream = new FileOutputStream("test.png");
    IOUtils.copy(diagramStream, fileStream);
    fileStream.flush();/*from  ww w  .  j  a va  2 s . c o m*/
    fileStream.close();
    assertNotNull(ImageIO.read(new File("test.png")));
}

From source file:com.shelfmap.simplequery.domain.BlobReferenceTest.java

@Given("a S3 resource")
public void createTestS3Resource() throws IOException {
    AmazonS3 s3 = ctx.getContext().getS3();

    boolean found = false;
    ObjectListing listing = s3.listObjects(BUCKET_NAME);
    for (S3ObjectSummary s : listing.getObjectSummaries()) {
        if (s.getKey().equals(KEY_NAME)) {
            found = true;/*from   w ww  . j a v  a  2  s  .co m*/
            break;
        }
    }

    InputStream is = getClass().getResourceAsStream("/images/testimage.jpg");
    try {
        testImage = ImageIO.read(is);
    } finally {
        IO.close(is, this);
    }

    InputStream uploadSource = null;
    try {
        if (!found) {
            uploadSource = getClass().getResourceAsStream("/images/testimage.jpg");
            ObjectMetadata metadata = new ObjectMetadata();
            metadata.addUserMetadata("format", "jpeg");
            metadata.setContentType("image/jpeg");
            PutObjectRequest request = new PutObjectRequest(BUCKET_NAME, KEY_NAME, uploadSource, metadata);
            s3.putObject(request);
        }
    } finally {
        IO.close(uploadSource, this);
    }

}

From source file:com.tess4j.rest.Tess4jV1.java

@RequestMapping(value = "ocr/v1/upload", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
public Status doOcr(@RequestBody Image image) throws Exception {
    try {/*ww w .j  av a2  s.c  o  m*/
        //FileUtils.writeByteArrayToFile(tmpFile, Base64.decodeBase64(image.getImage()));
        ByteArrayInputStream bis = new ByteArrayInputStream(Base64.decodeBase64(image.getImage()));
        Tesseract tesseract = Tesseract.getInstance(); // JNA Interface Mapping
        String imageText = tesseract.doOCR(ImageIO.read(bis));
        image.setText(imageText);
        repository.save(image);
        LOGGER.debug("OCR Result = " + imageText);
    } catch (Exception e) {
        LOGGER.error("TessearctException while converting/uploading image: ", e);
        throw new TesseractException();
    }

    return new Status("success");
}

From source file:net.pkhsolutions.pecsapp.control.PictureFileStorage.java

/**
 * TODO Document me/*from  www. j a  va  2s. co m*/
 *
 * @param descriptor
 * @param layout
 * @return
 * @throws IOException
 */
@NotNull
public Optional<BufferedImage> load(@NotNull PictureDescriptor descriptor, @NotNull Optional<PageLayout> layout)
        throws IOException {
    final Path path = getDirectoryForLayout(layout)
            .resolve(String.format("%d.%s", descriptor.getId(), descriptor.getMimeType().getSubtype()));
    LOGGER.debug("Loading image from {}", path);
    if (!Files.exists(path)) {
        LOGGER.warn("File {} does not exist", path);
        return Optional.empty();
    }
    try (InputStream inputStream = Files.newInputStream(path)) {
        return Optional.of(ImageIO.read(inputStream));
    }
}

From source file:com.frostwire.ImageCache.java

private BufferedImage loadFromCache(URL url, OnLoadedListener listener) {
    try {/*from w w  w  .  j a  v  a  2  s.co  m*/
        File file = getCacheFile(url);
        BufferedImage image = ImageIO.read(file);
        listener.onLoaded(url, image, true, false);
        return image;
    } catch (Throwable e) {
        LOG.error("Failed to load image from cache: " + url, e);
        if (e instanceof OutOfMemoryError) {
            e.printStackTrace(); // this is a special condition
        }
        listener.onLoaded(url, null, false, true);
        return null;
    }
}

From source file:doge.photo.DogePhotoManipulator.java

private BufferedImage readImage(Photo photo) throws IOException {
    try (InputStream inputStream = photo.getInputStream()) {
        return ImageIO.read(inputStream);
    }//from  w w  w .  j  av  a  2 s.  c  o  m
}