Package com.jhlabs.image
Class ImageUtils
java.lang.Object
com.jhlabs.image.ImageUtils
A class containing some static utility methods for dealing with BufferedImages.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic BufferedImage
cloneImage
(BufferedImage image) Clones a BufferedImage.static void
composeThroughMask
(Raster src, WritableRaster dst, Raster sel) Compose src onto dst using the alpha of sel to interpolate between the two.static BufferedImage
convertImageToARGB
(Image image) Convert an Image into a TYPE_INT_ARGB BufferedImage.static BufferedImage
createImage
(ImageProducer producer) Cretae a BufferedImage from an ImageProducer.static int[]
getRGB
(BufferedImage image, int x, int y, int width, int height, int[] pixels) A convenience method for getting ARGB pixels from an image.static Rectangle
Calculates the bounds of the non-transparent parts of the given image.static BufferedImage
getSubimage
(BufferedImage image, int x, int y, int w, int h) Returns a *copy* of a subimage of image.static void
paintCheckedBackground
(Component c, Graphics g, int x, int y, int width, int height) Paint a check pattern, used for a background to indicate image transparency.static void
setRGB
(BufferedImage image, int x, int y, int width, int height, int[] pixels) A convenience method for setting ARGB pixels in an image.
-
Constructor Details
-
ImageUtils
public ImageUtils()
-
-
Method Details
-
createImage
Cretae a BufferedImage from an ImageProducer.- Parameters:
producer
- the ImageProducer- Returns:
- a new TYPE_INT_ARGB BufferedImage
-
convertImageToARGB
Convert an Image into a TYPE_INT_ARGB BufferedImage. If the image is already of this type, the original image is returned unchanged.- Parameters:
image
- the image to convert- Returns:
- the converted image
-
getSubimage
Returns a *copy* of a subimage of image. This avoids the performance problems associated with BufferedImage.getSubimage.- Parameters:
image
- the imagex
- the x positiony
- the y positionw
- the widthh
- the height- Returns:
- the subimage
-
cloneImage
Clones a BufferedImage.- Parameters:
image
- the image to clone- Returns:
- the cloned image
-
paintCheckedBackground
public static void paintCheckedBackground(Component c, Graphics g, int x, int y, int width, int height) Paint a check pattern, used for a background to indicate image transparency.- Parameters:
c
- the component to draw intog
- the Graphics objectsx
- the x positiony
- the y positionwidth
- the widthheight
- the height
-
getSelectedBounds
Calculates the bounds of the non-transparent parts of the given image.- Parameters:
p
- the image- Returns:
- the bounds of the non-transparent area
-
composeThroughMask
Compose src onto dst using the alpha of sel to interpolate between the two. I can't think of a way to do this using AlphaComposite.- Parameters:
src
- the source rasterdst
- the destination rastersel
- the mask raster
-
getRGB
A convenience method for getting ARGB pixels from an image. This tries to avoid the performance penalty of BufferedImage.getRGB unmanaging the image.- Parameters:
image
- a BufferedImage objectx
- the left edge of the pixel blocky
- the right edge of the pixel blockwidth
- the width of the pixel arryheight
- the height of the pixel arrypixels
- the array to hold the returned pixels. May be null.- Returns:
- the pixels
- See Also:
-
setRGB
A convenience method for setting ARGB pixels in an image. This tries to avoid the performance penalty of BufferedImage.setRGB unmanaging the image.- Parameters:
image
- a BufferedImage objectx
- the left edge of the pixel blocky
- the right edge of the pixel blockwidth
- the width of the pixel arryheight
- the height of the pixel arrypixels
- the array of pixels to set- See Also:
-