| java.lang.Object org.apache.xmlgraphics.image.GraphicsUtil
GraphicsUtil | public class GraphicsUtil (Code) | | Set of utility methods for Graphics.
These generally bypass broken methods in Java2D or provide tweaked
implementations.
author: Thomas DeWeese version: $Id: GraphicsUtil.java 499611 2007-01-24 23:17:50Z cam $ |
Method Summary | |
public static ColorModel | coerceColorModel(ColorModel cm, boolean newAlphaPreMult) Create a new ColorModel with it's alpha premultiplied state matching
newAlphaPreMult.
Parameters: cm - The ColorModel to change the alpha premult state of. Parameters: newAlphaPreMult - The new state of alpha premult. | public static ColorModel | coerceData(WritableRaster wr, ColorModel cm, boolean newAlphaPreMult) Coerces data within a bufferedImage to match newAlphaPreMult,
Note that this can not change the colormodel of bi so you
Parameters: wr - The raster to change the state of. Parameters: cm - The colormodel currently associated with data in wr. Parameters: newAlphaPreMult - The desired state of alpha Premult for raster. | public static CachableRed | convertToLsRGB(CachableRed src) This method will return a CacheableRed that has it's data in
the linear sRGB colorspace. | public static CachableRed | convertTosRGB(CachableRed src) This method will return a CacheableRed that has it's data in
the sRGB colorspace. | public static void | copyBand(Raster src, int srcBand, WritableRaster dst, int dstBand) | public static void | copyBand(Raster src, Rectangle sR, int sBand, WritableRaster dst, Rectangle dR, int dBand) | public static void | copyData(Raster src, WritableRaster dst) Copies data from one raster to another. | public static void | copyData(BufferedImage src, BufferedImage dst) Copies data from one bufferedImage to another paying attention
to the state of AlphaPreMultiplied. | public static void | copyData(BufferedImage src, Rectangle srcRect, BufferedImage dst, Point destP) Copies data from one bufferedImage to another paying attention
to the state of AlphaPreMultiplied. | public static void | copyData_FALLBACK(Raster src, WritableRaster dst) | public static void | copyData_INT_PACK(Raster src, WritableRaster dst) An internal optimized version of copyData designed to work on
Integer packed data with a SinglePixelPackedSampleModel. | public static WritableRaster | copyRaster(Raster ras) Creates a new raster that has a copy of the data in
ras. | public static WritableRaster | copyRaster(Raster ras, int minX, int minY) Creates a new raster that has a copy of the data in
ras. | public static void | divideAlpha(WritableRaster wr) | protected static void | divide_BYTE_COMP_Data(WritableRaster wr) | protected static void | divide_INT_PACK_Data(WritableRaster wr) | public static boolean | is_BYTE_COMP_Data(SampleModel sm) | public static boolean | is_INT_PACK_Data(SampleModel sm, boolean requireAlpha) | public static BufferedImage | makeLinearBufferedImage(int width, int height, boolean premult) Constructs a BufferedImage with a linear sRGB colorModel, and alpha. | public static ColorModel | makeLinear_sRGBCM(boolean premult) Method that returns either Linear_sRGB_Pre or Linear_sRGB_UnPre
based on premult flag.
Parameters: premult - True if the ColorModel should have premultiplied alpha. | public static WritableRaster | makeRasterWritable(Raster ras) Coerces ras to be writable. | public static WritableRaster | makeRasterWritable(Raster ras, int minX, int minY) Coerces ras to be writable. | protected static void | mult_BYTE_COMP_Data(WritableRaster wr) | protected static void | mult_INT_PACK_Data(WritableRaster wr) | public static void | multiplyAlpha(WritableRaster wr) | public static CachableRed | wrap(RenderedImage ri) Convertes any RenderedImage to a CacheableRed. |
Linear_sRGB | final public static ColorModel Linear_sRGB(Code) | | Standard prebuilt Linear_sRGB color model with no alpha
|
Linear_sRGB_Pre | final public static ColorModel Linear_sRGB_Pre(Code) | | Standard prebuilt Linear_sRGB color model with premultiplied alpha.
|
Linear_sRGB_Unpre | final public static ColorModel Linear_sRGB_Unpre(Code) | | Standard prebuilt Linear_sRGB color model with unpremultiplied alpha.
|
sRGB | final public static ColorModel sRGB(Code) | | Standard prebuilt sRGB color model with no alpha.
|
sRGB_Pre | final public static ColorModel sRGB_Pre(Code) | | Standard prebuilt sRGB color model with premultiplied alpha.
|
sRGB_Unpre | final public static ColorModel sRGB_Unpre(Code) | | Standard prebuilt sRGB color model with unpremultiplied alpha.
|
coerceColorModel | public static ColorModel coerceColorModel(ColorModel cm, boolean newAlphaPreMult)(Code) | | Create a new ColorModel with it's alpha premultiplied state matching
newAlphaPreMult.
Parameters: cm - The ColorModel to change the alpha premult state of. Parameters: newAlphaPreMult - The new state of alpha premult. A new colorModel that has isAlphaPremultiplied()equal to newAlphaPreMult. |
coerceData | public static ColorModel coerceData(WritableRaster wr, ColorModel cm, boolean newAlphaPreMult)(Code) | | Coerces data within a bufferedImage to match newAlphaPreMult,
Note that this can not change the colormodel of bi so you
Parameters: wr - The raster to change the state of. Parameters: cm - The colormodel currently associated with data in wr. Parameters: newAlphaPreMult - The desired state of alpha Premult for raster. A new colormodel that matches newAlphaPreMult. |
convertToLsRGB | public static CachableRed convertToLsRGB(CachableRed src)(Code) | | This method will return a CacheableRed that has it's data in
the linear sRGB colorspace. If src is already in
linear sRGB then this method does nothing and returns src.
Otherwise it creates a transform that will convert
src's output to linear sRGB and returns that CacheableRed.
Parameters: src - The image to convert to linear sRGB. An equivilant image to src who's data is inlinear sRGB. |
convertTosRGB | public static CachableRed convertTosRGB(CachableRed src)(Code) | | This method will return a CacheableRed that has it's data in
the sRGB colorspace. If src is already in
sRGB then this method does nothing and returns src.
Otherwise it creates a transform that will convert
src's output to sRGB and returns that CacheableRed.
Parameters: src - The image to convert to sRGB. An equivilant image to src who's data is in sRGB. |
copyBand | public static void copyBand(Raster src, int srcBand, WritableRaster dst, int dstBand)(Code) | | |
copyBand | public static void copyBand(Raster src, Rectangle sR, int sBand, WritableRaster dst, Rectangle dR, int dBand)(Code) | | |
copyData | public static void copyData(Raster src, WritableRaster dst)(Code) | | Copies data from one raster to another. Only the region of
overlap between src and dst is copied. Src and
Dst must have compatible SampleModels.
Parameters: src - The source of the data Parameters: dst - The destination for the data. |
copyData | public static void copyData(BufferedImage src, BufferedImage dst)(Code) | | Copies data from one bufferedImage to another paying attention
to the state of AlphaPreMultiplied.
Parameters: src - The source Parameters: dst - The destination |
copyData | public static void copyData(BufferedImage src, Rectangle srcRect, BufferedImage dst, Point destP)(Code) | | Copies data from one bufferedImage to another paying attention
to the state of AlphaPreMultiplied.
Parameters: src - The source Parameters: srcRect - The Rectangle of source data to be copied Parameters: dst - The destination Parameters: destP - The Place for the upper left corner of srcRect in dst. |
copyData_FALLBACK | public static void copyData_FALLBACK(Raster src, WritableRaster dst)(Code) | | |
copyData_INT_PACK | public static void copyData_INT_PACK(Raster src, WritableRaster dst)(Code) | | An internal optimized version of copyData designed to work on
Integer packed data with a SinglePixelPackedSampleModel. Only
the region of overlap between src and dst is copied.
Calls to this should be preflighted with is_INT_PACK_Data
on both src and dest (requireAlpha can be false).
Parameters: src - The source of the data Parameters: dst - The destination for the data. |
copyRaster | public static WritableRaster copyRaster(Raster ras)(Code) | | Creates a new raster that has a copy of the data in
ras. This is highly optimized for speed. There is
no provision for changing any aspect of the SampleModel.
This method should be used when you need to change the contents
of a Raster that you do not "own" (ie the result of a
getData call).
Parameters: ras - The Raster to copy. A writable copy of ras |
copyRaster | public static WritableRaster copyRaster(Raster ras, int minX, int minY)(Code) | | Creates a new raster that has a copy of the data in
ras. This is highly optimized for speed. There is
no provision for changing any aspect of the SampleModel.
However you can specify a new location for the returned raster.
This method should be used when you need to change the contents
of a Raster that you do not "own" (ie the result of a
getData call).
Parameters: ras - The Raster to copy. Parameters: minX - The x location for the upper left corner of thereturned WritableRaster. Parameters: minY - The y location for the upper left corner of thereturned WritableRaster. A writable copy of ras |
divideAlpha | public static void divideAlpha(WritableRaster wr)(Code) | | |
divide_BYTE_COMP_Data | protected static void divide_BYTE_COMP_Data(WritableRaster wr)(Code) | | |
divide_INT_PACK_Data | protected static void divide_INT_PACK_Data(WritableRaster wr)(Code) | | |
is_BYTE_COMP_Data | public static boolean is_BYTE_COMP_Data(SampleModel sm)(Code) | | |
is_INT_PACK_Data | public static boolean is_INT_PACK_Data(SampleModel sm, boolean requireAlpha)(Code) | | |
makeLinearBufferedImage | public static BufferedImage makeLinearBufferedImage(int width, int height, boolean premult)(Code) | | Constructs a BufferedImage with a linear sRGB colorModel, and alpha.
Parameters: width - The desired width of the BufferedImage Parameters: height - The desired height of the BufferedImage Parameters: premult - The desired state of alpha premultiplied The requested BufferedImage. |
makeLinear_sRGBCM | public static ColorModel makeLinear_sRGBCM(boolean premult)(Code) | | Method that returns either Linear_sRGB_Pre or Linear_sRGB_UnPre
based on premult flag.
Parameters: premult - True if the ColorModel should have premultiplied alpha. a ColorMdoel with Linear sRGB colorSpace andthe alpha channel set in accordance withpremult |
makeRasterWritable | public static WritableRaster makeRasterWritable(Raster ras)(Code) | | Coerces ras to be writable. The returned Raster continues to
reference the DataBuffer from ras, so modifications to the returned
WritableRaster will be seen in ras.
This method should only be used if you need a WritableRaster due to
an interface (such as to construct a BufferedImage), but have no
intention of modifying the contents of the returned Raster. If
you have any doubt about other users of the data in ras,
use copyRaster (above).
Parameters: ras - The raster to make writable. A Writable version of ras (shares DataBuffer withras). |
makeRasterWritable | public static WritableRaster makeRasterWritable(Raster ras, int minX, int minY)(Code) | | Coerces ras to be writable. The returned Raster continues to
reference the DataBuffer from ras, so modifications to the returned
WritableRaster will be seen in ras.
You can specify a new location for the returned WritableRaster, this
is especially useful for constructing BufferedImages which require
the Raster to be at (0,0).
This method should only be used if you need a WritableRaster due to
an interface (such as to construct a BufferedImage), but have no
intention of modifying the contents of the returned Raster. If
you have any doubt about other users of the data in ras,
use copyRaster (above).
Parameters: ras - The raster to make writable. Parameters: minX - The x location for the upper left corner of thereturned WritableRaster. Parameters: minY - The y location for the upper left corner of thereturned WritableRaster. A Writable version of ras with it's upper lefthand coordinate set to minX, minY (shares it's DataBufferwith ras). |
mult_BYTE_COMP_Data | protected static void mult_BYTE_COMP_Data(WritableRaster wr)(Code) | | |
mult_INT_PACK_Data | protected static void mult_INT_PACK_Data(WritableRaster wr)(Code) | | |
multiplyAlpha | public static void multiplyAlpha(WritableRaster wr)(Code) | | |
wrap | public static CachableRed wrap(RenderedImage ri)(Code) | | Convertes any RenderedImage to a CacheableRed.
If ri is already a CacheableRed it casts it down and
returns it.
In cases where ri is not already a CacheableRed it
wraps ri with a helper class. The wrapped
CacheableRed "Pretends" that it has no sources since it has no
way of inteligently handling the dependency/dirty region calls
if it exposed the source.
Parameters: ri - The RenderedImage to convert. a CacheableRed that contains the same data as ri. |
|
|