Java BufferedImage Operation ensureRGBAImage(BufferedImage img)

Here you can find the source of ensureRGBAImage(BufferedImage img)

Description

Checks if the type of img is BufferedImage.TYPE_INT_ARGB and if is not, create a new one, just like img but with transparency

License

Open Source License

Parameter

Parameter Description
image the image to be checked. Cannot be null.

Return

the same image, if its type is BufferedImage.TYPE_INT_ARGB, or a new transparent one.

Declaration

public static BufferedImage ensureRGBAImage(BufferedImage img) 

Method Source Code

//package com.java2s;
/*----------------    FILE HEADER  ------------------------------------------
    //from  www  .  ja v a 2  s  .co  m
 This file is part of deegree.
 Copyright (C) 2001-2006 by:
 EXSE, Department of Geography, University of Bonn
 http://www.giub.uni-bonn.de/deegree/
 lat/lon GmbH
 http://www.lat-lon.de
    
 This library is free software; you can redistribute it and/or
 modify it under the terms of the GNU Lesser General Public
 License as published by the Free Software Foundation; either
 version 2.1 of the License, or (at your option) any later version.
    
 This library 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
 Lesser General Public License for more details.
    
 You should have received a copy of the GNU Lesser General Public
 License along with this library; if not, write to the Free Software
 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
    
 Contact:
    
 Andreas Poth
 lat/lon GmbH
 Aennchenstra?e 19
 53177 Bonn
 Germany
 E-Mail: poth@lat-lon.de
    
 Prof. Dr. Klaus Greve
 Department of Geography
 University of Bonn
 Meckenheimer Allee 166
 53115 Bonn
 Germany
 E-Mail: greve@giub.uni-bonn.de
     
 ---------------------------------------------------------------------------*/

import java.awt.Graphics;

import java.awt.image.BufferedImage;

public class Main {
    /**
     * Checks if the type of <code>img</code> is <code>BufferedImage.TYPE_INT_ARGB</code>
     * and if is not, create a new one, just like <code>img</code> but with transparency
     * @param image the image to be checked. Cannot be null.
     * @return the same image, if its type is <code>BufferedImage.TYPE_INT_ARGB</code>, or a 
     * new transparent one. 
     */
    public static BufferedImage ensureRGBAImage(BufferedImage img) {

        if (img == null) {
            throw new NullPointerException("Image cannot be null!");
        }

        if (img.getType() != BufferedImage.TYPE_INT_ARGB) {
            BufferedImage tmp = new BufferedImage(img.getWidth(), img.getHeight(), BufferedImage.TYPE_INT_ARGB);
            Graphics g = tmp.getGraphics();
            g.drawImage(img, 0, 0, null);
            g.dispose();
            img = tmp;
        }
        return img;
    }
}

Related

  1. duplicate(BufferedImage image)
  2. DuplicateBufferedImage(BufferedImage bi)
  3. duplicateImage(BufferedImage image)
  4. dye(BufferedImage image, Color color)
  5. ensureIntRGB(final BufferedImage img)
  6. fadeImageByShape(BufferedImage bimg, Shape arbshape, double alpha, int rule)
  7. fadeImages(BufferedImage source1, BufferedImage source2, BufferedImage target, int relX, int targetX)
  8. fakeAOI(final BufferedImage pImage, final Rectangle pSourceRegion)
  9. findavg(BufferedImage bimg)