Class ImageBuilder
java.lang.Object
org.apache.commons.imaging.common.ImageBuilder
A utility class primary intended for storing data obtained by reading
image files.
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionImageBuilder
(int width, int height, boolean hasAlpha) Construct an ImageBuilder instance -
Method Summary
Modifier and TypeMethodDescriptionCreate a BufferedImage using the data stored in the ImageBuilder.int
Get the height of the ImageBuilder pixel fieldint
getRGB
(int x, int y) Get the RGB or ARGB value for the pixel at the position (x,y) within the image builder pixel field.getSubimage
(int x, int y, int w, int h) Gets a subimage from the ImageBuilder using the specified parameters.int
getWidth()
Get the width of the ImageBuilder pixel fieldprivate BufferedImage
makeBufferedImage
(int[] argb, int w, int h, boolean useAlpha) void
setRGB
(int x, int y, int argb) Set the RGB or ARGB value for the pixel at position (x,y) within the image builder pixel field.
-
Field Details
-
data
private final int[] data -
width
private final int width -
height
private final int height -
hasAlpha
private final boolean hasAlpha
-
-
Constructor Details
-
ImageBuilder
public ImageBuilder(int width, int height, boolean hasAlpha) Construct an ImageBuilder instance- Parameters:
width
- the width of the image to be builtheight
- the height of the image to be builthasAlpha
- indicates whether the image has an alpha channel (the selection of alpha channel does not change the memory requirements for the ImageBuilder or resulting BufferedImage.
-
-
Method Details
-
getWidth
public int getWidth()Get the width of the ImageBuilder pixel field- Returns:
- a positive integer
-
getHeight
public int getHeight()Get the height of the ImageBuilder pixel field- Returns:
- a positive integer
-
getRGB
public int getRGB(int x, int y) Get the RGB or ARGB value for the pixel at the position (x,y) within the image builder pixel field. For performance reasons no bounds checking is applied.- Parameters:
x
- the X coordinate of the pixel to be ready
- the Y coordinate of the pixel to be read- Returns:
- the RGB or ARGB pixel value
-
setRGB
public void setRGB(int x, int y, int argb) Set the RGB or ARGB value for the pixel at position (x,y) within the image builder pixel field. For performance reasons, no bounds checking is applied.- Parameters:
x
- the X coordinate of the pixel to be sety
- the Y coordinate of the pixel to be setargb
- the RGB or ARGB value to be stored.
-
getBufferedImage
Create a BufferedImage using the data stored in the ImageBuilder.- Returns:
- a valid BufferedImage.
-
getSubimage
Gets a subimage from the ImageBuilder using the specified parameters. If the parameters specify a rectangular region that is not entirely contained within the bounds defined by the ImageBuilder, this method will throw a RasterFormatException. This runtime-exception behavior is consistent with the behavior of the getSubimage method provided by BufferedImage.- Parameters:
x
- the X coordinate of the upper-left corner of the specified rectangular regiony
- the Y coordinate of the upper-left corner of the specified rectangular regionw
- the width of the specified rectangular regionh
- the height of the specified rectangular region- Returns:
- a BufferedImage that constructed from the data within the specified rectangular region
- Throws:
RasterFormatException
- f the specified area is not contained within this ImageBuilder
-
makeBufferedImage
-