Loads an image that isn't JPEG (with default Java loader). - Java 2D Graphics

Java examples for 2D Graphics:Image Load

Description

Loads an image that isn't JPEG (with default Java loader).

Demo Code

/*/* w w  w  . j  a  v  a2s  . co  m*/
This file is part of leafdigital util.

util is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

util is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with util.  If not, see <http://www.gnu.org/licenses/>.

Copyright 2011 Samuel Marshall.
 */
//package com.java2s;
import java.awt.*;

import javax.swing.JPanel;

public class Main {
    /** Used only if we need a component for MediaTracker */
    public static JPanel pStupid = null;

    /**
     * Loads an image that isn't JPEG (with default Java loader).
     * @param data
     * @return Image (ready for display)
     */
    public static Image loadOther(byte[] data) {
        Image iReturn;
        if (pStupid == null)
            pStupid = new JPanel();
        iReturn = Toolkit.getDefaultToolkit().createImage(data);
        waitImage(iReturn);
        return iReturn;
    }

    private static void waitImage(Image i) {
        MediaTracker mt = new MediaTracker(pStupid);
        mt.addImage(i, 1);
        try {
            mt.waitForAll();
        } catch (InterruptedException e2) {
        }
    }
}

Related Tutorials