- java.lang.Object
-
- java.awt.Image
-
- java.awt.image.BufferedImage
-
- 实现的所有接口
-
RenderedImage,WritableRenderedImage,Transparency
public class BufferedImage extends Image implements WritableRenderedImage, Transparency
BufferedImage子类描述了具有可访问的图像数据缓冲区的Image。BufferedImage由ColorModel和Raster的图像数据组成。 Raster的SampleModel中的Raster数量和类型必须与ColorModel所需的数量和类型相匹配,以表示其颜色和alpha分量。 所有BufferedImage对象的左上角坐标为(0,0)。Raster用于构造BufferedImage任何Raster必须具有minX = 0和minY = 0。这个类依赖的数据获取和设置方法
Raster,并在颜色表征方法ColorModel。- 另请参见:
-
ColorModel,Raster,WritableRaster
-
-
字段汇总
字段 变量和类型 字段 描述 static intTYPE_3BYTE_BGR表示具有8位RGB颜色分量的图像,对应于Windows样式的BGR颜色模型,其中颜色为蓝色,绿色和红色,以3个字节存储。static intTYPE_4BYTE_ABGR表示具有8位RGBA颜色分量的图像,其中颜色为蓝色,绿色和红色,存储在3个字节和1个字节的alpha中。static intTYPE_4BYTE_ABGR_PRE表示具有8位RGBA颜色分量的图像,其中颜色为蓝色,绿色和红色,存储在3个字节和1个字节的alpha中。static intTYPE_BYTE_BINARY表示不透明的字节打包的1,2或4位图像。static intTYPE_BYTE_GRAY表示无索引的无符号字节灰度图像。static intTYPE_BYTE_INDEXED表示索引的字节图像。static intTYPE_CUSTOM图像类型无法识别,因此必须是自定义图像。static intTYPE_INT_ARGB表示将8位RGBA颜色分量打包为整数像素的图像。static intTYPE_INT_ARGB_PRE表示将8位RGBA颜色分量打包为整数像素的图像。static intTYPE_INT_BGR表示具有8位RGB颜色分量的图像,对应于Windows或Solaris样式的BGR颜色模型,蓝色,绿色和红色填充为整数像素。static intTYPE_INT_RGB表示将8位RGB颜色分量打包为整数像素的图像。static intTYPE_USHORT_555_RGB表示具有5-5-5 RGB颜色分量(5位红色,5位绿色,5位蓝色)且没有alpha的图像。static intTYPE_USHORT_565_RGB表示具有5-6-5 RGB颜色分量(5位红色,6位绿色,5位蓝色)且没有alpha的图像。static intTYPE_USHORT_GRAY表示未签名的短灰度图像,非索引)。-
声明的属性在类 java.awt.Image
accelerationPriority, SCALE_AREA_AVERAGING, SCALE_DEFAULT, SCALE_FAST, SCALE_REPLICATE, SCALE_SMOOTH, UndefinedProperty
-
Fields declared in interface java.awt.Transparency
BITMASK, OPAQUE, TRANSLUCENT
-
-
构造方法摘要
构造方法 构造器 描述 BufferedImage(int width, int height, int imageType)构造一个预定义图像类型之一的BufferedImage。BufferedImage(int width, int height, int imageType, IndexColorModel cm)构造一个预定义图像类型之一的BufferedImage:TYPE_BYTE_BINARY或TYPE_BYTE_INDEXED。BufferedImage(ColorModel cm, WritableRaster raster, boolean isRasterPremultiplied, Hashtable<?,?> properties)构造一个新的BufferedImage具有指定ColorModel和Raster。
-
方法摘要
所有方法 实例方法 具体的方法 变量和类型 方法 描述 voidaddTileObserver(TileObserver to)添加tile观察器。voidcoerceData(boolean isAlphaPremultiplied)强制数据与isAlphaPremultiplied变量中指定的状态匹配。WritableRastercopyData(WritableRaster outRaster)计算BufferedImage的任意矩形区域并将其复制到指定的WritableRaster。Graphics2DcreateGraphics()创建一个Graphics2D,可用于绘制此BufferedImage。WritableRastergetAlphaRaster()返回WritableRaster表示BufferedImage对象的alpha通道,其中ColorModel对象支持单独的空间Alpha通道,例如ComponentColorModel和DirectColorModel。ColorModelgetColorModel()返回ColorModel。RastergetData()将图像作为一个大图块返回。RastergetData(Rectangle rect)计算并返回BufferedImage的任意区域。GraphicsgetGraphics()此方法返回Graphics2D,但此处是为了向后兼容。intgetHeight()返回BufferedImage的高度。intgetHeight(ImageObserver observer)返回BufferedImage的高度。intgetMinTileX()返回x方向上的最小tile索引。intgetMinTileY()返回y方向上的最小tile索引。intgetMinX()返回此BufferedImage的最小x坐标。intgetMinY()返回此BufferedImage的最小y坐标。intgetNumXTiles()返回x方向上的tile数。intgetNumYTiles()返回y方向上的tile数。ObjectgetProperty(String name)按名称返回图像的属性。ObjectgetProperty(String name, ImageObserver observer)按名称返回图像的属性。String[]getPropertyNames()如果未识别属性名称,则返回由getProperty(String)或null识别的名称数组。WritableRastergetRaster()返回WritableRaster。intgetRGB(int x, int y)返回默认RGB颜色模型(TYPE_INT_ARGB)和默认sRGB颜色空间中的整数像素。int[]getRGB(int startX, int startY, int w, int h, int[] rgbArray, int offset, int scansize)从图像数据的一部分返回默认RGB颜色模型(TYPE_INT_ARGB)和默认sRGB颜色空间中的整数像素数组。SampleModelgetSampleModel()返回与SampleModel相关联的BufferedImage。ImageProducergetSource()返回生成图像像素的对象。Vector<RenderedImage>getSources()返回Vector的RenderedImage个对象,这些对象是此BufferedImage的图像数据的直接来源,而不是这些直接来源的来源。BufferedImagegetSubimage(int x, int y, int w, int h)返回由指定矩形区域定义的子图像。RastergetTile(int tileX, int tileY)返回瓦(tileX,tileY)。intgetTileGridXOffset()返回tile网格相对于原点的x偏移量,例如tile(0,0)位置的x坐标。intgetTileGridYOffset()返回tile网格相对于原点的y偏移量,例如tile(0,0)位置的y坐标。intgetTileHeight()返回tile高度(以像素为单位)。intgetTileWidth()返回tile宽度(以像素为单位)。intgetTransparency()返回透明度。intgetType()返回图像类型。intgetWidth()返回BufferedImage的宽度。intgetWidth(ImageObserver observer)返回BufferedImage的宽度。WritableRastergetWritableTile(int tileX, int tileY)检查一块瓷砖进行书写。Point[]getWritableTileIndices()返回一个Point个对象的数组,指示要检出哪些切片以进行写入。booleanhasTileWriters()返回是否签出任何图块以进行写入。booleanisAlphaPremultiplied()返回alpha是否已被预乘。booleanisTileWritable(int tileX, int tileY)返回当前是否已检出tile以进行写入。voidreleaseWritableTile(int tileX, int tileY)放弃写入磁贴的权限。voidremoveTileObserver(TileObserver to)删除tile观察者。voidsetData(Raster r)将图像的矩形区域设置为指定的Raster r的内容,假定该区域与BufferedImage位于相同的坐标空间中。voidsetRGB(int x, int y, int rgb)将此BufferedImage的像素设置为指定的RGB值。voidsetRGB(int startX, int startY, int w, int h, int[] rgbArray, int offset, int scansize)将默认RGB颜色模型(TYPE_INT_ARGB)和默认sRGB颜色空间中的整数像素数组设置为图像数据的一部分。StringtoString()返回此BufferedImage对象及其值的String表示形式。-
声明方法的类 java.awt.Image
flush, getAccelerationPriority, getCapabilities, getScaledInstance, setAccelerationPriority
-
-
-
-
字段详细信息
-
TYPE_CUSTOM
public static final int TYPE_CUSTOM
图像类型无法识别,因此必须是自定义图像。 此类型仅用作getType()方法的返回值。- 另请参见:
- 常数字段值
-
TYPE_INT_RGB
public static final int TYPE_INT_RGB
表示将8位RGB颜色分量打包为整数像素的图像。 该图像有DirectColorModel没有alpha。 当具有非不透明alpha的数据存储在此类型的图像中时,必须将颜色数据调整为非预乘形式并丢弃alpha,如AlphaComposite文档中所述。- 另请参见:
- 常数字段值
-
TYPE_INT_ARGB
public static final int TYPE_INT_ARGB
表示将8位RGBA颜色分量打包为整数像素的图像。 该图像有一个DirectColorModel与alpha。 该图像中的颜色数据被认为不与alpha预乘。 当此类型用作BufferedImage构造函数的imageType参数时,创建的映像与在JDK1.1和早期版本中创建的映像一致。- 另请参见:
- 常数字段值
-
TYPE_INT_ARGB_PRE
public static final int TYPE_INT_ARGB_PRE
表示将8位RGBA颜色分量打包为整数像素的图像。 该图像有一个DirectColorModelalpha。 该图像中的颜色数据被认为是与alpha预乘的。- 另请参见:
- 常数字段值
-
TYPE_INT_BGR
public static final int TYPE_INT_BGR
表示具有8位RGB颜色分量的图像,对应于Windows或Solaris样式的BGR颜色模型,蓝色,绿色和红色填充为整数像素。 没有阿尔法。 图片有DirectColorModel。 当具有非不透明alpha的数据存储在此类型的图像中时,必须将颜色数据调整为非预乘形式并丢弃alpha,如AlphaComposite文档中所述。- 另请参见:
- 常数字段值
-
TYPE_3BYTE_BGR
public static final int TYPE_3BYTE_BGR
表示具有8位RGB颜色分量的图像,对应于Windows样式的BGR颜色模型,其中颜色为蓝色,绿色和红色,以3个字节存储。 没有阿尔法。 图片有ComponentColorModel。 当具有非不透明alpha的数据存储在此类型的图像中时,必须将颜色数据调整为非预乘形式并丢弃alpha,如AlphaComposite文档中所述。- 另请参见:
- 常数字段值
-
TYPE_4BYTE_ABGR
public static final int TYPE_4BYTE_ABGR
表示具有8位RGBA颜色分量的图像,其中颜色为蓝色,绿色和红色,存储在3个字节和1个字节的alpha中。 该图像有一个ComponentColorModelalpha。 该图像中的颜色数据被认为不与alpha预乘。 字节数据在A,B,G,R的单个字节数组中从每个像素内的较低字节地址到较高字节地址交错。- 另请参见:
- 常数字段值
-
TYPE_4BYTE_ABGR_PRE
public static final int TYPE_4BYTE_ABGR_PRE
表示具有8位RGBA颜色分量的图像,其中颜色为蓝色,绿色和红色,存储在3个字节和1个字节的alpha中。 该图像有一个ComponentColorModelalpha。 该图像中的颜色数据被认为是与alpha预乘的。 字节数据在A,B,G,R的单个字节数组中从每个像素内的较低字节地址到较高字节地址交错。- 另请参见:
- 常数字段值
-
TYPE_USHORT_565_RGB
public static final int TYPE_USHORT_565_RGB
表示具有5-6-5 RGB颜色分量(5位红色,6位绿色,5位蓝色)且没有alpha的图像。 这张图片有DirectColorModel。 当具有非不透明alpha的数据存储在此类型的图像中时,必须将颜色数据调整为非预乘形式并丢弃alpha,如AlphaComposite文档中所述。- 另请参见:
- 常数字段值
-
TYPE_USHORT_555_RGB
public static final int TYPE_USHORT_555_RGB
表示具有5-5-5 RGB颜色分量(5位红色,5位绿色,5位蓝色)且没有alpha的图像。 这张图片有DirectColorModel。 当具有非不透明alpha的数据存储在此类型的图像中时,必须将颜色数据调整为非预乘形式并丢弃alpha,如AlphaComposite文档中所述。- 另请参见:
- 常数字段值
-
TYPE_BYTE_GRAY
public static final int TYPE_BYTE_GRAY
表示无索引的无符号字节灰度图像。 此图片的ComponentColorModel与CS_GRAYColorSpace。 当具有非不透明alpha的数据存储在此类型的图像中时,必须将颜色数据调整为非预乘形式并丢弃alpha,如AlphaComposite文档中所述。- 另请参见:
- 常数字段值
-
TYPE_USHORT_GRAY
public static final int TYPE_USHORT_GRAY
表示未签名的短灰度图像,非索引)。 此图片的ComponentColorModel与CS_GRAYColorSpace。 当具有非不透明alpha的数据存储在此类型的图像中时,必须将颜色数据调整为非预乘形式并丢弃alpha,如AlphaComposite文档中所述。- 另请参见:
- 常数字段值
-
TYPE_BYTE_BINARY
public static final int TYPE_BYTE_BINARY
表示不透明的字节打包的1,2或4位图像。 该图像的IndexColorModel没有alpha。 当这种类型的被用作imageType参数传递给BufferedImage构造函数的imageType参数,但没有ColorModel参数,一个1比特的图像与一个创建IndexColorModel在默认两种颜色的sRGBColorSpace{0,0,0}和: {255,255,255}。可以通过
BufferedImage构造函数构造每像素2或4位的图像,该构造函数通过提供具有适当映射大小的ColorModel获取ColorModel参数。每像素8位的图像应使用图像类型
TYPE_BYTE_INDEXED或TYPE_BYTE_GRAY具体取决于其ColorModel。当颜色数据存储在此类型的图像中时,颜色图中最接近的颜色由
IndexColorModel确定,并存储结果索引。 根据IndexColorModel色彩图中的颜色,可能会导致alpha或颜色分量的逼近和丢失。- 另请参见:
- 常数字段值
-
TYPE_BYTE_INDEXED
public static final int TYPE_BYTE_INDEXED
表示索引的字节图像。 当这种类型的被用作imageType参数传递给BufferedImage构造函数的imageType参数,但没有ColorModel参数,一个IndexColorModel与和颜色从216-255其余部分的256色6/6/6颜色立方体调色板创建由默认sRGB ColorSpace中的灰度值填充。当颜色数据存储在此类型的图像中时,颜色图中最接近的颜色由
IndexColorModel确定,并存储生成的索引。 根据IndexColorModel色彩映射中的颜色,可能会导致alpha或颜色分量的逼近和丢失。- 另请参见:
- 常数字段值
-
-
构造方法详细信息
-
BufferedImage
public BufferedImage(int width, int height, int imageType)构造其中一个预定义图像类型的BufferedImage。 图像的ColorSpace是默认的sRGB空间。- 参数
-
width- 创建图像的宽度 -
height- 创建的图像的高度 -
imageType- 创建的图像的类型 - 另请参见:
-
ColorSpace,TYPE_INT_RGB,TYPE_INT_ARGB,TYPE_INT_ARGB_PRE,TYPE_INT_BGR,TYPE_3BYTE_BGR,TYPE_4BYTE_ABGR,TYPE_4BYTE_ABGR_PRE,TYPE_BYTE_GRAY,TYPE_USHORT_GRAY,TYPE_BYTE_BINARY,TYPE_BYTE_INDEXED,TYPE_USHORT_565_RGB,TYPE_USHORT_555_RGB
-
BufferedImage
public BufferedImage(int width, int height, int imageType, IndexColorModel cm)构造一个预定义图像类型之一的BufferedImage:TYPE_BYTE_BINARY或TYPE_BYTE_INDEXED。如果图像类型为TYPE_BYTE_BINARY,则使用颜色模型中的条目数来确定图像是否应具有每像素1,2或4位。 如果颜色模型具有1或2个条目,则图像将具有每像素1位。 如果它有3个或4个条目,则每个像素具有2位的图像。 如果它具有5到16个条目,则图像将具有每像素4位。 否则,将抛出IllegalArgumentException。
- 参数
-
width- 创建图像的宽度 -
height- 创建的图像的高度 -
imageType- 创建的图像的类型 -
cm-IndexColorModel创建的图像 - 异常
-
IllegalArgumentException- 如果imageType不是TYPE_BYTE_BINARY或TYPE_BYTE_INDEXED,或者imageType是TYPE_BYTE_BINARY且颜色映射的条目数超过16个。 - 另请参见:
-
TYPE_BYTE_BINARY,TYPE_BYTE_INDEXED
-
BufferedImage
public BufferedImage(ColorModel cm, WritableRaster raster, boolean isRasterPremultiplied, Hashtable<?,?> properties)
构造一个新的BufferedImage具有指定ColorModel和Raster。 如果SampleModel中的Raster数量和类型与ColorModel表示其颜色和alpha分量所需的数量和类型不匹配,则抛出RasterFormatException。 这种方法可以乘或除的颜色Raster通过阿尔法数据到匹配alphaPremultiplied状态在ColorModel。 这个BufferedImage属性可以通过传递String/Object对StringObject。- 参数
-
cm-ColorModel获取新图像 -
raster-Raster用于图像数据 -
isRasterPremultiplied- 如果是true,则栅格中的数据已与alpha预乘。 -
properties-Hashtable的String/Object对。 - 异常
-
RasterFormatException- 如果SampleModel中的Raster数量和类型与ColorModel所需的数量和类型不匹配,则表示其颜色和alpha分量。 -
IllegalArgumentException- 如果raster与cm不兼容 - 另请参见:
-
ColorModel,Raster,WritableRaster
-
-
方法详细信息
-
getType
public int getType()
返回图像类型。 如果它不是已知类型之一,则返回TYPE_CUSTOM。- 结果
-
这个
BufferedImage的图像类型。 - 另请参见:
-
TYPE_INT_RGB,TYPE_INT_ARGB,TYPE_INT_ARGB_PRE,TYPE_INT_BGR,TYPE_3BYTE_BGR,TYPE_4BYTE_ABGR,TYPE_4BYTE_ABGR_PRE,TYPE_BYTE_GRAY,TYPE_BYTE_BINARY,TYPE_BYTE_INDEXED,TYPE_USHORT_GRAY,TYPE_USHORT_565_RGB,TYPE_USHORT_555_RGB,TYPE_CUSTOM
-
getColorModel
public ColorModel getColorModel()
返回ColorModel。- Specified by:
-
getColorModel在界面RenderedImage - 结果
-
ColorModel的BufferedImage。
-
getRaster
public WritableRaster getRaster()
返回WritableRaster。- 结果
-
WritableRaster的BufferedImage。
-
getAlphaRaster
public WritableRaster getAlphaRaster()
返回WritableRaster表示BufferedImage对象的Alpha通道,其中ColorModel对象支持单独的空间Alpha通道,例如ComponentColorModel和DirectColorModel。 如果此图像中没有与ColorModel关联的Alpha通道,则返回null。 此方法假设所有ColorModel比其他对象IndexColorModel,如果ColorModel支持alpha,存在被存储为图像数据的最后一个频带的单独alpha通道。 如果图像使用查找表中具有alpha的IndexColorModel,则此方法返回null因为没有空间离散的alpha通道。 此方法创建一个新的WritableRaster,但共享数据数组。- 结果
-
一个
WritableRaster或null如果此BufferedImage具有与其相关联的alpha通道ColorModel。
-
getRGB
public int getRGB(int x, int y)返回默认RGB颜色模型(TYPE_INT_ARGB)和默认sRGB颜色空间中的整数像素。 如果此默认模型与图像ColorModel不匹配,则会发生颜色转换。 使用此方法时,返回数据中的每个颜色分量只有8位精度。如果坐标不在边界内,则可能抛出
ArrayOutOfBoundsException。 但是,不保证显式边界检查。- 参数
-
x- 从中获取默认RGB颜色模型和sRGB颜色空间中的像素的像素的X坐标 -
y- 从中获取默认RGB颜色模型和sRGB颜色空间中像素的像素的Y坐标 - 结果
- 默认RGB颜色模型中的整数像素和默认的sRGB颜色空间。
- 另请参见:
-
setRGB(int, int, int),setRGB(int, int, int, int, int[], int, int)
-
getRGB
public int[] getRGB(int startX, int startY, int w, int h, int[] rgbArray, int offset, int scansize)从图像数据的一部分返回默认RGB颜色模型(TYPE_INT_ARGB)和默认sRGB颜色空间中的整数像素数组。 如果默认模型与图像ColorModel不匹配,ColorModel颜色转换。 使用此方法时,返回数据中的每个颜色分量只有8位精度。 使用图像中的指定坐标(x,y),可以通过以下方式访问ARGB像素:pixel = rgbArray[offset + (y-startY)*scansize + (x-startX)];如果该区域不在边界内,则可能抛出
ArrayOutOfBoundsException。 但是,不保证显式边界检查。- 参数
-
startX- 起始X坐标 -
startY- 起始Y坐标 -
w- 区域宽度 -
h- 地区的高度 -
rgbArray- 如果不是null,则在此处写入rgb像素 -
offset- 偏移到rgbArray -
scansize- 扫描线大步为rgbArray - 结果
- RGB像素数组。
- 另请参见:
-
setRGB(int, int, int),setRGB(int, int, int, int, int[], int, int)
-
setRGB
public void setRGB(int x, int y, int rgb)将此BufferedImage的像素设置为指定的RGB值。 假设像素位于默认的RGB颜色模型TYPE_INT_ARGB和默认的sRGB颜色空间中。 对于具有IndexColorModel图像,选择具有最近颜色的索引。如果坐标不在边界内,则可能抛出
ArrayOutOfBoundsException。 但是,不保证显式边界检查。- 参数
-
x- 要设置的像素的X坐标 -
y- 要设置的像素的Y坐标 -
rgb- RGB值 - 另请参见:
-
getRGB(int, int),getRGB(int, int, int, int, int[], int, int)
-
setRGB
public void setRGB(int startX, int startY, int w, int h, int[] rgbArray, int offset, int scansize)将默认RGB颜色模型(TYPE_INT_ARGB)和默认sRGB颜色空间中的整数像素数组设置为图像数据的一部分。 如果默认模型与图像ColorModel不匹配,ColorModel颜色转换。 使用此方法时,返回数据中的每个颜色分量只有8位精度。 使用此图像中的指定坐标(x,y),可以通过以下方式访问ARGB像素:pixel = rgbArray[offset + (y-startY)*scansize + (x-startX)];警告:不会发生抖动。如果该区域不在边界内,则可能抛出
ArrayOutOfBoundsException。 但是,不保证显式边界检查。- 参数
-
startX- 起始X坐标 -
startY- 起始Y坐标 -
w- 该地区的宽度 -
h- 该地区的高度 -
rgbArray- rgb像素 -
offset- 偏移到rgbArray -
scansize- 扫描线大步为rgbArray - 另请参见:
-
getRGB(int, int),getRGB(int, int, int, int, int[], int, int)
-
getWidth
public int getWidth()
返回BufferedImage的宽度。- Specified by:
-
getWidth在界面RenderedImage - 结果
-
这个宽度
BufferedImage
-
getHeight
public int getHeight()
返回BufferedImage的高度。- Specified by:
-
getHeight接口RenderedImage - 结果
-
这个高度
BufferedImage
-
getWidth
public int getWidth(ImageObserver observer)
返回BufferedImage的宽度。- Specified by:
-
getWidth类Image - 参数
-
observer- 被忽略 - 结果
-
这个宽度
BufferedImage - 另请参见:
-
Image.getHeight(java.awt.image.ImageObserver),ImageObserver
-
getHeight
public int getHeight(ImageObserver observer)
返回BufferedImage的高度。- Specified by:
-
getHeight在课程Image - 参数
-
observer- 被忽略了 - 结果
-
这个高度
BufferedImage - 另请参见:
-
Image.getWidth(java.awt.image.ImageObserver),ImageObserver
-
getSource
public ImageProducer getSource()
返回生成图像像素的对象。- Specified by:
-
getSource类Image - 结果
-
ImageProducer用于生成此图像的像素。 - 另请参见:
-
ImageProducer
-
getProperty
public Object getProperty(String name, ImageObserver observer)
按名称返回图像的属性。 各个属性名称由各种图像格式定义。 如果未为特定图像定义属性,则此方法返回UndefinedProperty字段。 如果尚未知道此图像的属性,则此方法返回null,ImageObserver会通知ImageObserver对象。 属性名称“comment”应该用于存储可选的注释,该注释可以作为图像,其源或作者的描述呈现给用户。- Specified by:
-
getProperty类Image - 参数
-
name- 房产名称 -
observer- 接收有关图像信息的通知的ImageObserver - 结果
-
Object,如果此图像的属性namenull则为指定的name或null的属性。 - 异常
-
NullPointerException- 如果属性名称为null。 - 另请参见:
-
ImageObserver,Image.UndefinedProperty
-
getProperty
public Object getProperty(String name)
按名称返回图像的属性。- Specified by:
-
getProperty接口RenderedImage - 参数
-
name- 房产名称 - 结果
-
Object,这是指定的name所指的财产。 - 异常
-
NullPointerException- 如果属性名称为null。 - 另请参见:
-
Image.UndefinedProperty
-
getGraphics
public Graphics getGraphics()
此方法返回Graphics2D,但此处是为了向后兼容。createGraphics更方便,因为它被声明返回Graphics2D。- Specified by:
-
getGraphics类Image - 结果
-
a
Graphics2D,可用于绘制此图像。 - 另请参见:
-
Graphics,Component.createImage(int, int)
-
createGraphics
public Graphics2D createGraphics()
创建一个Graphics2D,可用于绘制此BufferedImage。- 结果
-
a
Graphics2D,用于绘制到这个图像。
-
getSubimage
public BufferedImage getSubimage(int x, int y, int w, int h)
返回由指定矩形区域定义的子图像。 返回的BufferedImage与原始映像共享相同的数据数组。- 参数
-
x- 指定矩形区域左上角的X坐标 -
y- 指定矩形区域左上角的Y坐标 -
w- 指定矩形区域的宽度 -
h- 指定矩形区域的高度 - 结果
-
BufferedImage是这个BufferedImage的子图像。 - 异常
-
RasterFormatException- 如果指定的区域未包含在此BufferedImage。
-
isAlphaPremultiplied
public boolean isAlphaPremultiplied()
返回alpha是否已被预乘。 如果没有alpha,则返回false。- 结果
-
true如果alpha已被预乘; 否则为false。
-
coerceData
public void coerceData(boolean isAlphaPremultiplied)
强制数据与isAlphaPremultiplied变量中指定的状态匹配。 它可以将颜色栅格数据乘以或除以alpha,或者如果数据处于正确状态则不执行任何操作。- 参数
-
isAlphaPremultiplied-true如果alpha已被预乘; 否则为false。
-
toString
public String toString()
返回此BufferedImage对象及其值的String表示形式。
-
getSources
public Vector<RenderedImage> getSources()
返回Vector的RenderedImage个对象,这些对象是此BufferedImage的图像数据的直接来源,而不是这些直接来源的来源。 如果BufferedImage没有关于其直接来源的信息,则此方法返回null。 如果BufferedImage没有直接来源,则返回空Vector。- Specified by:
-
getSources接口RenderedImage - 结果
-
一个
Vector包含此的直接来源BufferedImage对象的图像的日期,或null如果此BufferedImage没有关于其直接来源,或空信息Vector如果此BufferedImage没有直接来源。
-
getPropertyNames
public String[] getPropertyNames()
如果未识别属性名称,则返回由getProperty(String)或null识别的名称数组。- Specified by:
-
getPropertyNames接口RenderedImage - 结果
-
包含
getProperty(String)识别的所有属性名称的String数组; 如果没有识别出属性名称,null。
-
getMinX
public int getMinX()
返回此BufferedImage的最小x坐标。 这始终为零。- Specified by:
-
getMinX接口RenderedImage - 结果
-
此
BufferedImage的最小x坐标。
-
getMinY
public int getMinY()
返回此BufferedImage的最小y坐标。 这始终为零。- Specified by:
-
getMinY在界面RenderedImage - 结果
-
此
BufferedImage的最小y坐标。
-
getSampleModel
public SampleModel getSampleModel()
返回SampleModel与此相关BufferedImage。- Specified by:
-
getSampleModel在界面RenderedImage - 结果
-
SampleModel这个BufferedImage。
-
getNumXTiles
public int getNumXTiles()
返回x方向上的tile数。 这总是一个。- Specified by:
-
getNumXTiles接口RenderedImage - 结果
- x方向上的瓦片数量。
-
getNumYTiles
public int getNumYTiles()
返回y方向上的tile数。 这总是一个。- Specified by:
-
getNumYTiles接口RenderedImage - 结果
- y方向上的瓦片数量。
-
getMinTileX
public int getMinTileX()
返回x方向上的最小tile索引。 这始终为零。- Specified by:
-
getMinTileX在界面RenderedImage - 结果
- x方向上的最小tile索引。
-
getMinTileY
public int getMinTileY()
返回y方向上的最小tile索引。 这始终为零。- Specified by:
-
getMinTileY接口RenderedImage - 结果
- y方向上的最小tile索引。
-
getTileWidth
public int getTileWidth()
返回tile宽度(以像素为单位)。- Specified by:
-
getTileWidth在接口RenderedImage - 结果
- 平铺宽度(以像素为单位)
-
getTileHeight
public int getTileHeight()
返回tile高度(以像素为单位)。- Specified by:
-
getTileHeight接口RenderedImage - 结果
- 平铺高度(以像素为单位)
-
getTileGridXOffset
public int getTileGridXOffset()
返回tile网格相对于原点的x偏移量,例如tile(0,0)位置的x坐标。 这始终为零。- Specified by:
-
getTileGridXOffset在界面RenderedImage - 结果
- 图块网格的x偏移量。
-
getTileGridYOffset
public int getTileGridYOffset()
返回tile网格相对于原点的y偏移量,例如tile(0,0)位置的y坐标。 这始终为零。- Specified by:
-
getTileGridYOffset在界面RenderedImage - 结果
- tile网格的y偏移量。
-
getTile
public Raster getTile(int tileX, int tileY)
返回瓦(tileX,tileY)。 请注意,tileX和tileY是tile数组的索引,而不是像素位置。 返回的Raster是实时的,这意味着如果图像被更改,它将被更新。- Specified by:
-
getTile接口RenderedImage - 参数
-
tileX- tile数组中请求的tile的x索引 -
tileY- 切片阵列中请求的切片的y索引 - 结果
-
Raster,它是由参数tileX和tileY定义的tileXtileY。 - 异常
-
ArrayIndexOutOfBoundsException- 如果tileX和tileY均不等于0
-
getData
public Raster getData()
将图像作为一个大图块返回。 如果图像被更改,Raster返回的Raster是图像数据的副本未更新。- Specified by:
-
getData在接口RenderedImage - 结果
-
a
Raster,它是图像数据的副本。 - 另请参见:
-
setData(Raster)
-
getData
public Raster getData(Rectangle rect)
计算并返回BufferedImage的任意区域。 返回的Raster是图像数据的副本,如果图像已更改,则不会更新。- Specified by:
-
getData在界面RenderedImage - 参数
-
rect- 待返回的地区BufferedImage。 - 结果
-
a
Raster,它是Raster指定区域的图像数据的BufferedImage - 另请参见:
-
setData(Raster)
-
copyData
public WritableRaster copyData(WritableRaster outRaster)
计算BufferedImage的任意矩形区域并将其复制到指定的WritableRaster。 要计算的区域由指定的WritableRaster的边界确定。 指定的WritableRaster必须具有与此映像兼容的SampleModel。 如果outRaster是null,则创建适当的WritableRaster。- Specified by:
-
copyData接口RenderedImage - 参数
-
outRaster-一个WritableRaster保存图像返回部分,或null - 结果
-
对提供或创建的
WritableRaster。
-
setData
public void setData(Raster r)
将图像的矩形区域设置为指定的Raster r的内容,假定其与BufferedImage位于相同的坐标空间中。 该操作被剪切到BufferedImage的边界。- Specified by:
-
setData在界面WritableRenderedImage - 参数
-
r- 指定的Raster - 另请参见:
-
getData(),getData(Rectangle)
-
addTileObserver
public void addTileObserver(TileObserver to)
添加tile观察器。 如果观察者已经存在,则会收到多个通知。- Specified by:
-
addTileObserver接口WritableRenderedImage - 参数
-
to- 指定的TileObserver
-
removeTileObserver
public void removeTileObserver(TileObserver to)
删除tile观察者。 如果观察员没有注册,则没有任何反应。 如果观察者已注册多个通知,则现在注册的通知少一个。- Specified by:
-
removeTileObserver在界面WritableRenderedImage - 参数
-
to- 指定的TileObserver。
-
isTileWritable
public boolean isTileWritable(int tileX, int tileY)返回当前是否已检出tile以进行写入。- Specified by:
-
isTileWritable接口WritableRenderedImage - 参数
-
tileX-tileX的x索引。 -
tileY-tileY的y索引。 - 结果
-
true如果指定索引指定的true贴已签出用于写入; 否则为false。 - 异常
-
ArrayIndexOutOfBoundsException- 如果tileX和tileY都不等于0
-
getWritableTileIndices
public Point[] getWritableTileIndices()
返回一个Point个对象的数组,指示要检出哪些切片以进行写入。 如果没有签出,则返回null。- Specified by:
-
getWritableTileIndices接口WritableRenderedImage - 结果
-
一个
Point数组,用于指示已签出用于写入的null如果没有null出用于写入的切片,null。
-
hasTileWriters
public boolean hasTileWriters()
返回是否签出任何图块以进行写入。 在语义上相当于(getWritableTileIndices() != null).- Specified by:
-
hasTileWriters接口WritableRenderedImage - 结果
-
true如果有任何瓷砖被签出以供写入; 否则为false。
-
getWritableTile
public WritableRaster getWritableTile(int tileX, int tileY)
检查一块瓷砖进行书写。 当一个TileObservers贴从没有编写器变为拥有一个写入器时,通知所有已注册的TileObservers。- Specified by:
-
getWritableTile接口WritableRenderedImage - 参数
-
tileX-tileX的x索引 -
tileY-tileY的y索引 - 结果
-
一个
WritableRaster,它是由指定索引指示的WritableRaster贴,用于检出以进行写入。
-
releaseWritableTile
public void releaseWritableTile(int tileX, int tileY)放弃写入磁贴的权限。 如果调用者继续写入磁贴,则结果未定义。 对此方法的调用应仅出现在调用getWritableTile(int, int)的匹配对中。 任何其他导致未定义的结果。 当一个TileObservers贴从一个写入器变为没有写入器时,所有已注册的TileObservers收到通知。- Specified by:
-
releaseWritableTile在界面WritableRenderedImage - 参数
-
tileX-tileX的x索引 -
tileY-tileY的y索引
-
getTransparency
public int getTransparency()
返回透明度。 返回OPAQUE,BITMASK或TRANSLUCENT。- Specified by:
-
getTransparency在界面Transparency - 结果
-
这个
BufferedImage的透明度。 - 从以下版本开始:
- 1.5
- 另请参见:
-
Transparency.OPAQUE,Transparency.BITMASK,Transparency.TRANSLUCENT
-
-