Example usage for java.awt Graphics drawImage

List of usage examples for java.awt Graphics drawImage

Introduction

In this page you can find the example usage for java.awt Graphics drawImage.

Prototype

public abstract boolean drawImage(Image img, int x, int y, ImageObserver observer);

Source Link

Document

Draws as much of the specified image as is currently available.

Usage

From source file:net.pms.medialibrary.commons.helpers.FileImportHelper.java

/**
 * Creates a buffered image from an image
 * @param image the image/*ww  w  .  jav  a 2s  .c  o  m*/
 * @return the buffered image
 */
public static BufferedImage getBufferedImage(Image image) {
    if (image instanceof BufferedImage) {
        return (BufferedImage) image;
    }

    // This code ensures that all the pixels in the image are loaded
    image = new ImageIcon(image).getImage();

    // Determine if the image has transparent pixels; for this method's
    // implementation, see Determining If an Image Has Transparent Pixels
    boolean hasAlpha = hasAlpha(image);

    // Create a buffered image with a format that's compatible with the screen
    BufferedImage bimage = null;
    GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
    try {
        // Determine the type of transparency of the new buffered image
        int transparency = Transparency.OPAQUE;
        if (hasAlpha) {
            transparency = Transparency.BITMASK;
        }

        // Create the buffered image
        GraphicsDevice gs = ge.getDefaultScreenDevice();
        GraphicsConfiguration gc = gs.getDefaultConfiguration();
        bimage = gc.createCompatibleImage(image.getWidth(null), image.getHeight(null), transparency);
    } catch (HeadlessException e) {
        // The system does not have a screen
    }

    if (bimage == null) {
        // Create a buffered image using the default color model
        int type = BufferedImage.TYPE_INT_RGB;
        if (hasAlpha) {
            type = BufferedImage.TYPE_INT_ARGB;
        }
        bimage = new BufferedImage(image.getWidth(null), image.getHeight(null), type);
    }

    // Copy image to buffered image
    Graphics g = bimage.createGraphics();

    // Paint the image onto the buffered image
    g.drawImage(image, 0, 0, null);
    g.dispose();

    return bimage;
}

From source file:Main.java

public void paintComponent(Graphics g) {
    if (image == null) {
        image = createImage(getSize().width, getSize().height);
        graphics2D = (Graphics2D) image.getGraphics();
        graphics2D.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
        clear();//from w  w  w .  j ava 2 s .  c  o  m
    }
    g.drawImage(image, 0, 0, null);
}

From source file:uk.co.modularaudio.mads.base.oscilloscope.ui.OscilloscopeDisplayUiJComponent.java

@Override
public void paint(final Graphics g) {
    checkImage();

    g.drawImage(outBufferedImage, 0, 0, null);
}

From source file:DoubleBufferWithBufferedImage.java

public void paint(Graphics g) {
    Graphics screengc = null;

    screengc = g;// w w  w. j  a v a 2  s .c  om

    g = buffer.getGraphics();

    g.setColor(Color.blue);
    g.fillRect(0, 0, w, h);

    g.setColor(Color.red);
    for (int i = 0; i < w; i += gap)
        g.drawLine(i, 0, w - i, h);
    for (int i = 0; i < h; i += gap)
        g.drawLine(0, i, w, h - i);
    screengc.drawImage(buffer, 0, 0, null);
}

From source file:AnimatedMessagePanel.java

public void paint(Graphics g) {
    if ((offscreen != null) && (og != null)) {
        g.drawImage(offscreen, 0, 0, null);
    }
}

From source file:uk.co.modularaudio.mads.base.waveroller.ui.WaveRollerDisplayUiJComponent.java

@Override
public void paint(final Graphics g) {
    if (rollPainter != null) {
        if (rollPainter.buffer0Visible()) {
            g.drawImage(rollPainter.buffer0.bi, rollPainter.buffer0XOffset, 0, null);
        }/*w ww  .j  a va 2s.  c o m*/
        if (rollPainter.buffer1Visible()) {
            g.drawImage(rollPainter.buffer1.bi, rollPainter.buffer1XOffset, 0, null);
        }
    } else {
        g.setColor(WaveRollerColours.BACKGROUND_COLOR);
        final Rectangle b = getBounds();
        g.fillRect(0, 0, b.width, b.height);
    }
}

From source file:com.krawler.esp.handlers.genericFileUpload.java

private BufferedImage toBufferedImage(Image image) {
    image = new ImageIcon(image).getImage();
    BufferedImage bufferedImage = new BufferedImage(image.getWidth(null), image.getHeight(null),
            BufferedImage.TYPE_INT_RGB);
    Graphics g = bufferedImage.createGraphics();
    g.setColor(Color.white);/* w  w w . ja  va 2s. c  o m*/
    g.fillRect(0, 0, image.getWidth(null), image.getHeight(null));
    g.drawImage(image, 0, 0, null);
    g.dispose();

    return bufferedImage;
}

From source file:org.apache.hadoop.chukwa.hicc.ImageSlicer.java

public BufferedImage subdivide(BufferedImage image, int level, XYData quadrant, XYData size, String prefix) {
    if (image.getWidth() <= size.getX() * Math.pow(2, level)) {
        try {//from   w  w  w  .ja  va 2 s.c om
            BufferedImage outputImage = tile(image, level, quadrant, size, true);
            write(outputImage, level, quadrant, prefix);
            return outputImage;
        } catch (Exception e) {
            log.error(ExceptionUtil.getStackTrace(e));
        }
    }

    BufferedImage zoomed = new BufferedImage(size.getX() * 2, size.getY() * 2, BufferedImage.TYPE_INT_RGB);
    Graphics g = zoomed.getGraphics();
    XYData newQuadrant = new XYData(quadrant.getX() * 2 + 0, quadrant.getY() * 2 + 0);
    g.drawImage(subdivide(image, level + 1, newQuadrant, size, prefix), 0, 0, null);
    newQuadrant = new XYData(quadrant.getX() * 2 + 0, quadrant.getY() * 2 + 1);
    g.drawImage(subdivide(image, level + 1, newQuadrant, size, prefix), 0, size.getY(), null);
    newQuadrant = new XYData(quadrant.getX() * 2 + 1, quadrant.getY() * 2 + 0);
    g.drawImage(subdivide(image, level + 1, newQuadrant, size, prefix), size.getX(), 0, null);
    newQuadrant = new XYData(quadrant.getX() * 2 + 1, quadrant.getY() * 2 + 1);
    g.drawImage(subdivide(image, level + 1, newQuadrant, size, prefix), size.getX(), size.getY(), null);
    BufferedImage outputImage = new BufferedImage(size.getX(), size.getY(), BufferedImage.TYPE_INT_RGB);
    outputImage.getGraphics().drawImage(zoomed, 0, 0, size.getX(), size.getY(), null);
    write(outputImage, level, quadrant, prefix);
    return outputImage;
}

From source file:UserInterface.AdministrativeRole.FeedBackJPanel.java

public void paintComponent(Graphics g) {
    super.paintComponent(g);

    // Draw the background image.
    g.drawImage(image2, 0, 0, this);
}

From source file:haven.Utils.java

public static BufferedImage outline2(BufferedImage img, Color col) {
    BufferedImage ol = outline(img, col);
    Graphics g = ol.getGraphics();
    g.drawImage(img, 1, 1, null);
    g.dispose();//www  .jav  a  2s.c o  m
    return (ol);
}