JavaTM 2 Platform
Standard Ed. 5.0

类 java.awt.image.DataBuffer
的使用

使用 DataBuffer 的软件包
java.awt.image 提供创建和修改图像的各种类。 
 

java.awt.imageDataBuffer 的使用
 

java.awt.imageDataBuffer 的子类
 class DataBufferByte
          此类扩展了 DataBuffer,并在内部按字节存储数据。
 class DataBufferDouble
          此类扩展了 DataBuffer,并在内部以 double 形式存储数据。
 class DataBufferFloat
          此类扩展了 DataBuffer,并在内部以 float 形式存储数据。
 class DataBufferInt
          此类扩展了 DataBuffer,并在内部以整数形式存储数据。
 class DataBufferShort
          此类扩展了 DataBuffer,并在内部以 short 类型存储数据。
 class DataBufferUShort
          此类扩展了 DataBuffer,并在内部以 short 类型存储数据。
 

声明为 DataBufferjava.awt.image 中的字段
protected  DataBuffer Raster.dataBuffer
          存储图像数据的 DataBuffer。
 

返回 DataBufferjava.awt.image 中的方法
abstract  DataBuffer SampleModel.createDataBuffer()
          创建一个对应于此 SampleModel 的 DataBuffer。
 DataBuffer ComponentSampleModel.createDataBuffer()
          创建对应于此 ComponentSampleModelDataBuffer
 DataBuffer SinglePixelPackedSampleModel.createDataBuffer()
          创建一个对应于此 SinglePixelPackedSampleModel 的 DataBuffer。
 DataBuffer MultiPixelPackedSampleModel.createDataBuffer()
          创建一个与此 MultiPixelPackedSampleModel 对应的 DataBuffer
 DataBuffer BandedSampleModel.createDataBuffer()
          创建一个与此 BandedSampleModel 对应的 DataBuffer,该 DataBuffer 的数据类型、存储单元数和大小都将与此 BandedSampleModel 一致。
 DataBuffer Raster.getDataBuffer()
          返回与此 Raster 关联的 DataBuffer。
 

参数类型为 DataBufferjava.awt.image 中的方法
static WritableRaster Raster.createBandedRaster(DataBuffer dataBuffer, int w, int h, int scanlineStride, int[] bankIndices, int[] bandOffsets, Point location)
          根据 BandedSampleModel 创建一个具有指定 DataBuffer、宽度、高度、扫描行跨度、存储单元索引和 band 偏移量的 Raster。
static WritableRaster Raster.createInterleavedRaster(DataBuffer dataBuffer, int w, int h, int scanlineStride, int pixelStride, int[] bandOffsets, Point location)
          根据 PixelInterleavedSampleModel 创建一个具有指定 DataBuffer、宽度、高度、扫描行跨度、像素跨度和 band 偏移量的 Raster。
static WritableRaster Raster.createPackedRaster(DataBuffer dataBuffer, int w, int h, int scanlineStride, int[] bandMasks, Point location)
          根据 SinglePixelPackedSampleModel 创建一个具有指定 DataBuffer、宽度、高度、扫描行跨度和 band 掩码的 Raster。
static WritableRaster Raster.createPackedRaster(DataBuffer dataBuffer, int w, int h, int bitsPerPixel, Point location)
          根据 MultiPixelPackedSampleModel 创建一个具有指定 DataBuffer、宽度、高度和每像素位数的 Raster。
static Raster Raster.createRaster(SampleModel sm, DataBuffer db, Point location)
          创建具有指定 SampleModel 和 DataBuffer 的 Raster。
static WritableRaster Raster.createWritableRaster(SampleModel sm, DataBuffer db, Point location)
          创建一个具有指定 SampleModel 和 DataBuffer 的 WritableRaster。
 Object SampleModel.getDataElements(int x, int y, int w, int h, Object obj, DataBuffer data)
          返回 TransferType 类型基本数组中指定像素矩形的像素数据。
abstract  Object SampleModel.getDataElements(int x, int y, Object obj, DataBuffer data)
          返回 TransferType 类型的基本数组中单个像素的数据。
 Object ComponentSampleModel.getDataElements(int x, int y, Object obj, DataBuffer data)
          以 TransferType 类型的基本数组形式返回单个像素的数据。
 Object SinglePixelPackedSampleModel.getDataElements(int x, int y, Object obj, DataBuffer data)
          返回 TransferType 类型的基本数组中单个像素的数据。
 Object MultiPixelPackedSampleModel.getDataElements(int x, int y, Object obj, DataBuffer data)
          以 TransferType 类型的基本数组形式返回单个像素的数据。
 Object BandedSampleModel.getDataElements(int x, int y, Object obj, DataBuffer data)
          返回 TransferType 类型的基本数组中单个像素的数据。
 double[] SampleModel.getPixel(int x, int y, double[] dArray, DataBuffer data)
          在一个 double 数组中返回指定像素的样本。
 float[] SampleModel.getPixel(int x, int y, float[] fArray, DataBuffer data)
          在一个 float 数组中返回指定像素的样本。
 int[] SampleModel.getPixel(int x, int y, int[] iArray, DataBuffer data)
          在一个 int 数组中返回指定像素的样本,每个数组元素一个样本。
 int[] ComponentSampleModel.getPixel(int x, int y, int[] iArray, DataBuffer data)
          返回 int 数组中指定像素的所有样本(每个数组元素一个样本)。
 int[] SinglePixelPackedSampleModel.getPixel(int x, int y, int[] iArray, DataBuffer data)
          在一个 int 型数组中返回指定像素的所有样本。
 int[] MultiPixelPackedSampleModel.getPixel(int x, int y, int[] iArray, DataBuffer data)
          返回 int 数组首个元素中的指定单个 band 像素。
 int[] BandedSampleModel.getPixel(int x, int y, int[] iArray, DataBuffer data)
          返回 int 数组中指定像素的所有样本。
 double[] SampleModel.getPixels(int x, int y, int w, int h, double[] dArray, DataBuffer data)
          在一个 double 数组中返回像素矩形的所有样本,每个数组元素一个样本。
 float[] SampleModel.getPixels(int x, int y, int w, int h, float[] fArray, DataBuffer data)
          在一个 float 数组中返回像素矩形的所有样本,每个数组元素一个样本。
 int[] SampleModel.getPixels(int x, int y, int w, int h, int[] iArray, DataBuffer data)
          在一个 int 数组中返回像素矩形的所有样本,每个数组元素一个样本。
 int[] ComponentSampleModel.getPixels(int x, int y, int w, int h, int[] iArray, DataBuffer data)
          返回 int 数组中像素的指定矩形区域的所有样本(每个数组元素一个样本)。
 int[] SinglePixelPackedSampleModel.getPixels(int x, int y, int w, int h, int[] iArray, DataBuffer data)
          在一个 int 型数组中返回指定像素矩形的所有样本,每个数组元素一个样本。
 int[] BandedSampleModel.getPixels(int x, int y, int w, int h, int[] iArray, DataBuffer data)
          返回 int 数组中指定像素矩形的所有样本,每个数据数组元素对应一个样本。
abstract  int SampleModel.getSample(int x, int y, int b, DataBuffer data)
          以 int 形式返回 (x,y) 处像素的指定 band 中的样本。
 int ComponentSampleModel.getSample(int x, int y, int b, DataBuffer data)
          以 int 类型返回位于 (x,y) 处像素的指定 band 中的样本。
 int SinglePixelPackedSampleModel.getSample(int x, int y, int b, DataBuffer data)
          以 int 形式返回 (x,y) 处像素的指定 band 中的样本。
 int MultiPixelPackedSampleModel.getSample(int x, int y, int b, DataBuffer data)
          返回以 int 表示的、像素 (x, y) 指定 band 中的采样。
 int BandedSampleModel.getSample(int x, int y, int b, DataBuffer data)
          针对 (x,y) 处的像素,返回指定 band 中样本的 int 值。
 double SampleModel.getSampleDouble(int x, int y, int b, DataBuffer data)
          以 double 形式返回 (x,y) 处像素的指定 band 中的样本。
 double ComponentSampleModel.getSampleDouble(int x, int y, int b, DataBuffer data)
          针对 (x,y) 处的像素,返回指定 band 中样本的 double 值。
 double BandedSampleModel.getSampleDouble(int x, int y, int b, DataBuffer data)
          针对 (x,y) 处的像素,返回指定 band 中样本的 double 值。
 float SampleModel.getSampleFloat(int x, int y, int b, DataBuffer data)
          以 float 形式返回 (x,y) 处像素的指定 band 中的样本。
 float ComponentSampleModel.getSampleFloat(int x, int y, int b, DataBuffer data)
          以 float 类型返回位于 (x,y) 处像素的指定 band 中的样本。
 float BandedSampleModel.getSampleFloat(int x, int y, int b, DataBuffer data)
          针对 (x,y) 处的像素,返回指定 band 中样本的 float 值。
 double[] SampleModel.getSamples(int x, int y, int w, int h, int b, double[] dArray, DataBuffer data)
          在一个 double 数组中返回指定像素矩形的指定 band 的样本,每个数组元素一个样本。
 float[] SampleModel.getSamples(int x, int y, int w, int h, int b, float[] fArray, DataBuffer data)
          在一个 float 数组中返回指定像素矩形的指定 band 的样本,每个数组元素一个样本。
 int[] SampleModel.getSamples(int x, int y, int w, int h, int b, int[] iArray, DataBuffer data)
          在一个 int 数组中返回指定像素矩形的指定 band 的样本,每个数组元素一个样本。
 int[] ComponentSampleModel.getSamples(int x, int y, int w, int h, int b, int[] iArray, DataBuffer data)
          针对一个 int 数组中指定的像素矩形,返回指定 band 中的样本,每个数据数组元素对应一个样本。
 int[] SinglePixelPackedSampleModel.getSamples(int x, int y, int w, int h, int b, int[] iArray, DataBuffer data)
          在一个 int 型数组中返回指定像素矩形的指定 band 的样本,每个数组元素一个样本。
 int[] BandedSampleModel.getSamples(int x, int y, int w, int h, int b, int[] iArray, DataBuffer data)
          针对一个 int 数组中指定的像素矩形,返回指定 band 中的样本,每个数据数组元素对应一个样本。
 void SampleModel.setDataElements(int x, int y, int w, int h, Object obj, DataBuffer data)
          根据 TransferType 类型的基本数组设置指定 DataBuffer 中像素矩形的数据。
abstract  void SampleModel.setDataElements(int x, int y, Object obj, DataBuffer data)
          根据 TransferType 类型的基本数组设置指定 DataBuffer 中单个像素的数据。
 void ComponentSampleModel.setDataElements(int x, int y, Object obj, DataBuffer data)
          从 TransferType 类型的基本数组设置指定 DataBuffer 中单个像素的数据。
 void SinglePixelPackedSampleModel.setDataElements(int x, int y, Object obj, DataBuffer data)
          根据 TransferType 类型的基本数组设置指定 DataBuffer 中单个像素的数据。
 void MultiPixelPackedSampleModel.setDataElements(int x, int y, Object obj, DataBuffer data)
          根据 TransferType 类型的基本数组设置指定 DataBuffer 中单个像素的数据。
 void BandedSampleModel.setDataElements(int x, int y, Object obj, DataBuffer data)
          从 TransferType 类型的基本数组设置指定 DataBuffer 中单个像素的数据。
 void SampleModel.setPixel(int x, int y, double[] dArray, DataBuffer data)
          使用输入样本的 double 数组设置 DataBuffer 中的像素。
 void SampleModel.setPixel(int x, int y, float[] fArray, DataBuffer data)
          使用输入样本的 float 数组设置 DataBuffer 中的像素。
 void SampleModel.setPixel(int x, int y, int[] iArray, DataBuffer data)
          使用输入样本的 int 数组设置 DataBuffer 中的像素。
 void ComponentSampleModel.setPixel(int x, int y, int[] iArray, DataBuffer data)
          使用输入样本的 int 数组设置 DataBuffer 中的像素。
 void SinglePixelPackedSampleModel.setPixel(int x, int y, int[] iArray, DataBuffer data)
          使用输入样本的 int 数组设置 DataBuffer 中的像素。
 void MultiPixelPackedSampleModel.setPixel(int x, int y, int[] iArray, DataBuffer data)
          使用输入的 int 数组设置 DataBuffer 中的某个像素。
 void BandedSampleModel.setPixel(int x, int y, int[] iArray, DataBuffer data)
          使用输入样本的 int 数组设置 DataBuffer 中的像素。
 void SampleModel.setPixels(int x, int y, int w, int h, double[] dArray, DataBuffer data)
          根据为每个数组元素包含一个样本的 double 数组设置像素矩形的所有样本。
 void SampleModel.setPixels(int x, int y, int w, int h, float[] fArray, DataBuffer data)
          根据为每个数组元素包含一个样本的 float 数组设置像素矩形的所有样本。
 void SampleModel.setPixels(int x, int y, int w, int h, int[] iArray, DataBuffer data)
          根据为每个数组元素包含一个样本的 int 数组设置像素矩形的所有样本。
 void ComponentSampleModel.setPixels(int x, int y, int w, int h, int[] iArray, DataBuffer data)
          从包含每个数组元素一个样本的 int 数组设置像素矩形区域的所有样本。
 void SinglePixelPackedSampleModel.setPixels(int x, int y, int w, int h, int[] iArray, DataBuffer data)
          根据为每个数组元素包含一个样本的 int 数组设置像素矩形的所有样本。
 void BandedSampleModel.setPixels(int x, int y, int w, int h, int[] iArray, DataBuffer data)
          设置 int 数组中像素矩形的所有样本,该数组中包含每个数组元素的一个样本。
 void SampleModel.setSample(int x, int y, int b, double s, DataBuffer data)
          使用输入的 double 设置 DataBuffer 中 (x,y) 处像素的指定 band 中的样本。
 void ComponentSampleModel.setSample(int x, int y, int b, double s, DataBuffer data)
          使用输入的 double 值,为 DataBuffer 中 (x,y) 处像素设置指定 band 中的样本。
 void BandedSampleModel.setSample(int x, int y, int b, double s, DataBuffer data)
          使用输入的 double 值,为 DataBuffer 中 (x,y) 处的像素设置指定 band 中的样本。
 void SampleModel.setSample(int x, int y, int b, float s, DataBuffer data)
          使用输入的 float 设置 DataBuffer 中 (x,y) 处像素的指定 band 中的样本。
 void ComponentSampleModel.setSample(int x, int y, int b, float s, DataBuffer data)
          使用输入的 float 值,为 DataBuffer 中 (x,y) 处像素设置指定 band 中的样本。
 void BandedSampleModel.setSample(int x, int y, int b, float s, DataBuffer data)
          使用输入的 float 值,为 DataBuffer 中 (x,y) 处的像素设置指定 band 中的样本。
abstract  void SampleModel.setSample(int x, int y, int b, int s, DataBuffer data)
          使用输入的 int 设置 DataBuffer 中 (x,y) 处像素的指定 band 中的样本。
 void ComponentSampleModel.setSample(int x, int y, int b, int s, DataBuffer data)
          使用输入的 int 值,为 DataBuffer 中 (x,y) 处的像素设置指定 band 中的样本。
 void SinglePixelPackedSampleModel.setSample(int x, int y, int b, int s, DataBuffer data)
          使用输入的 int 设置 DataBuffer 中 (x,y) 处像素的指定 band 中的样本。
 void MultiPixelPackedSampleModel.setSample(int x, int y, int b, int s, DataBuffer data)
          使用输入的 int,设置 DataBuffer 中位于 (x,y) 的像素的指定 band 中的采样。
 void BandedSampleModel.setSample(int x, int y, int b, int s, DataBuffer data)
          使用输入的 int 值,为 DataBuffer 中 (x,y) 处的像素设置指定 band 中的样本。
 void SampleModel.setSamples(int x, int y, int w, int h, int b, double[] dArray, DataBuffer data)
          根据为每个数组元素包含一个样本的 double 数组设置指定像素矩形的指定 band 中的样本。
 void SampleModel.setSamples(int x, int y, int w, int h, int b, float[] fArray, DataBuffer data)
          根据为每个数组元素包含一个样本的 float 数组设置指定像素矩形的指定 band 中的样本。
 void SampleModel.setSamples(int x, int y, int w, int h, int b, int[] iArray, DataBuffer data)
          根据为每个数组元素包含一个样本的 int 数组设置指定像素矩形的指定 band 中的样本。
 void ComponentSampleModel.setSamples(int x, int y, int w, int h, int b, int[] iArray, DataBuffer data)
          根据为每个数据数组元素包含一个样本的 int 数组,设置指定像素矩形的指定 band 中的样本。
 void SinglePixelPackedSampleModel.setSamples(int x, int y, int w, int h, int b, int[] iArray, DataBuffer data)
          根据为每个数组元素包含一个样本的 int 数组设置指定像素矩形的指定 band 中的样本。
 void BandedSampleModel.setSamples(int x, int y, int w, int h, int b, int[] iArray, DataBuffer data)
          为 int 数组中指定的像素矩形设置指定 band 中的样本,该数组中包含每个数据数组元素的一个样本。
 

参数类型为 DataBufferjava.awt.image 中的构造方法
Raster(SampleModel sampleModel, DataBuffer dataBuffer, Point origin)
          构建具有给定 SampleModel 和 DataBuffer 的 Raster。
Raster(SampleModel sampleModel, DataBuffer dataBuffer, Rectangle aRegion, Point sampleModelTranslate, Raster parent)
          构造具有给定 SampleModel、DataBuffer 和父 Raster 的 Raster。
WritableRaster(SampleModel sampleModel, DataBuffer dataBuffer, Point origin)
          构造具有给定 SampleModel 和 DataBuffer 的 WritableRaster。
WritableRaster(SampleModel sampleModel, DataBuffer dataBuffer, Rectangle aRegion, Point sampleModelTranslate, WritableRaster parent)
          构造具有给定 SampleModel、DataBuffer 和父亲的 WritableRaster。
 


JavaTM 2 Platform
Standard Ed. 5.0

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java 2 SDK SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策