Uses of Class java.awt.image.BufferedImage (Java Platform SE 8 )
Date: 2026-08-19

## Uses of Class
java.awt.image.BufferedImage

- Packages that use BufferedImage
  Package | Description
  --- | ---
  java.awt | Contains all of the classes for creating user interfaces and for painting graphics and images.
  java.awt.image | Provides classes for creating and modifying images.
  javax.imageio | The main package of the Java Image I/O API.
  javax.imageio.event | A package of the Java Image I/O API dealing with synchronous notification of events during the reading and writing of images.

- - ### Uses of BufferedImage in java.awt

    Methods in java.awt that return BufferedImage
    Modifier and Type | Method and Description
    --- | ---
    `BufferedImage` | GraphicsConfiguration.`createCompatibleImage(int width, int height)` Returns a `BufferedImage` with a data layout and color model compatible with this `GraphicsConfiguration`.
    `BufferedImage` | GraphicsConfiguration.`createCompatibleImage(int width, int height, int transparency)` Returns a `BufferedImage` that supports the specified transparency and has a data layout and color model compatible with this `GraphicsConfiguration`.
    `BufferedImage` | Robot.`createScreenCapture(Rectangle screenRect)` Creates an image containing pixels read from the screen.
    `BufferedImage` | TexturePaint.`getImage()` Returns the `BufferedImage` texture used to fill the shapes.

    Methods in java.awt with parameters of type BufferedImage
    Modifier and Type | Method and Description
    --- | ---
    `abstract Graphics2D` | GraphicsEnvironment.`createGraphics(BufferedImage img)` Returns a `Graphics2D` object for rendering into the specified `BufferedImage`.
    `abstract void` | Graphics2D.`drawImage(BufferedImage img, BufferedImageOp op, int x, int y)` Renders a `BufferedImage` that is filtered with a `BufferedImageOp`.

    Constructors in java.awt with parameters of type BufferedImage
    Constructor and Description
    `TexturePaint(BufferedImage txtr, Rectangle2D anchor)` Constructs a `TexturePaint` object.

  - ### Uses of BufferedImage in java.awt.image

    Methods in java.awt.image that return BufferedImage
    Modifier and Type | Method and Description
    --- | ---
    `BufferedImage` | IndexColorModel.`convertToIntDiscrete(Raster raster, boolean forceARGB)` Returns a new `BufferedImage` of TYPE_INT_ARGB or TYPE_INT_RGB that has a `Raster` with pixel data computed by expanding the indices in the source `Raster` using the color/alpha component arrays of this `ColorModel`.
    `BufferedImage` | RescaleOp.`createCompatibleDestImage(BufferedImage src, ColorModel destCM)` Creates a zeroed destination image with the correct size and number of bands.
    `BufferedImage` | LookupOp.`createCompatibleDestImage(BufferedImage src, ColorModel destCM)` Creates a zeroed destination image with the correct size and number of bands.
    `BufferedImage` | ConvolveOp.`createCompatibleDestImage(BufferedImage src, ColorModel destCM)` Creates a zeroed destination image with the correct size and number of bands.
    `BufferedImage` | AffineTransformOp.`createCompatibleDestImage(BufferedImage src, ColorModel destCM)` Creates a zeroed destination image with the correct size and number of bands.
    `BufferedImage` | ColorConvertOp.`createCompatibleDestImage(BufferedImage src, ColorModel destCM)` Creates a zeroed destination image with the correct size and number of bands, given this source.
    `BufferedImage` | BufferedImageOp.`createCompatibleDestImage(BufferedImage src, ColorModel destCM)` Creates a zeroed destination image with the correct size and number of bands.
    `BufferedImage` | RescaleOp.`filter(BufferedImage src, BufferedImage dst)` Rescales the source BufferedImage.
    `BufferedImage` | LookupOp.`filter(BufferedImage src, BufferedImage dst)` Performs a lookup operation on a `BufferedImage`.
    `BufferedImage` | ConvolveOp.`filter(BufferedImage src, BufferedImage dst)` Performs a convolution on BufferedImages.
    `BufferedImage` | AffineTransformOp.`filter(BufferedImage src, BufferedImage dst)` Transforms the source `BufferedImage` and stores the results in the destination `BufferedImage`.
    `BufferedImage` | ColorConvertOp.`filter(BufferedImage src, BufferedImage dest)` ColorConverts the source BufferedImage.
    `BufferedImage` | BufferedImageOp.`filter(BufferedImage src, BufferedImage dest)` Performs a single-input/single-output operation on a `BufferedImage`.
    `abstract BufferedImage` | VolatileImage.`getSnapshot()` Returns a static snapshot image of this object.
    `BufferedImage` | BufferedImage.`getSubimage(int x, int y, int w, int h)` Returns a subimage defined by a specified rectangular region.

    Methods in java.awt.image with parameters of type BufferedImage
    Modifier and Type | Method and Description
    --- | ---
    `BufferedImage` | RescaleOp.`createCompatibleDestImage(BufferedImage src, ColorModel destCM)` Creates a zeroed destination image with the correct size and number of bands.
    `BufferedImage` | LookupOp.`createCompatibleDestImage(BufferedImage src, ColorModel destCM)` Creates a zeroed destination image with the correct size and number of bands.
    `BufferedImage` | ConvolveOp.`createCompatibleDestImage(BufferedImage src, ColorModel destCM)` Creates a zeroed destination image with the correct size and number of bands.
    `BufferedImage` | AffineTransformOp.`createCompatibleDestImage(BufferedImage src, ColorModel destCM)` Creates a zeroed destination image with the correct size and number of bands.
    `BufferedImage` | ColorConvertOp.`createCompatibleDestImage(BufferedImage src, ColorModel destCM)` Creates a zeroed destination image with the correct size and number of bands, given this source.
    `BufferedImage` | BufferedImageOp.`createCompatibleDestImage(BufferedImage src, ColorModel destCM)` Creates a zeroed destination image with the correct size and number of bands.
    `BufferedImage` | RescaleOp.`filter(BufferedImage src, BufferedImage dst)` Rescales the source BufferedImage.
    `BufferedImage` | LookupOp.`filter(BufferedImage src, BufferedImage dst)` Performs a lookup operation on a `BufferedImage`.
    `BufferedImage` | ConvolveOp.`filter(BufferedImage src, BufferedImage dst)` Performs a convolution on BufferedImages.
    `BufferedImage` | AffineTransformOp.`filter(BufferedImage src, BufferedImage dst)` Transforms the source `BufferedImage` and stores the results in the destination `BufferedImage`.
    `BufferedImage` | ColorConvertOp.`filter(BufferedImage src, BufferedImage dest)` ColorConverts the source BufferedImage.
    `BufferedImage` | BufferedImageOp.`filter(BufferedImage src, BufferedImage dest)` Performs a single-input/single-output operation on a `BufferedImage`.
    `Rectangle2D` | RescaleOp.`getBounds2D(BufferedImage src)` Returns the bounding box of the rescaled destination image.
    `Rectangle2D` | LookupOp.`getBounds2D(BufferedImage src)` Returns the bounding box of the filtered destination image.
    `Rectangle2D` | ConvolveOp.`getBounds2D(BufferedImage src)` Returns the bounding box of the filtered destination image.
    `Rectangle2D` | AffineTransformOp.`getBounds2D(BufferedImage src)` Returns the bounding box of the transformed destination.
    `Rectangle2D` | ColorConvertOp.`getBounds2D(BufferedImage src)` Returns the bounding box of the destination, given this source.
    `Rectangle2D` | BufferedImageOp.`getBounds2D(BufferedImage src)` Returns the bounding box of the filtered destination image.

  - ### Uses of BufferedImage in javax.imageio

    Fields in javax.imageio declared as BufferedImage
    Modifier and Type | Field and Description
    --- | ---
    `protected BufferedImage` | ImageReadParam.`destination` The current destination `BufferedImage`, or `null` if none has been set.

    Fields in javax.imageio with type parameters of type BufferedImage
    Modifier and Type | Field and Description
    --- | ---
    `protected List<? extends BufferedImage>` | IIOImage.`thumbnails` A `List` of `BufferedImage` thumbnails, or `null`.

    Methods in javax.imageio that return BufferedImage
    Modifier and Type | Method and Description
    --- | ---
    `BufferedImage` | ImageTypeSpecifier.`createBufferedImage(int width, int height)` Creates a `BufferedImage` with a given width and height according to the specification embodied in this object.
    `BufferedImage` | ImageReadParam.`getDestination()` Returns the `BufferedImage` currently set by the `setDestination` method, or `null` if none is set.
    `protected static BufferedImage` | ImageReader.`getDestination(ImageReadParam param, Iterator<ImageTypeSpecifier> imageTypes, int width, int height)` Returns the `BufferedImage` to which decoded pixel data should be written.
    `BufferedImage` | IIOImage.`getThumbnail(int index)` Returns a thumbnail associated with the main image.
    `static BufferedImage` | ImageIO.`read(File input)` Returns a `BufferedImage` as the result of decoding a supplied `File` with an `ImageReader` chosen automatically from among those currently registered.
    `static BufferedImage` | ImageIO.`read(ImageInputStream stream)` Returns a `BufferedImage` as the result of decoding a supplied `ImageInputStream` with an `ImageReader` chosen automatically from among those currently registered.
    `static BufferedImage` | ImageIO.`read(InputStream input)` Returns a `BufferedImage` as the result of decoding a supplied `InputStream` with an `ImageReader` chosen automatically from among those currently registered.
    `BufferedImage` | ImageReader.`read(int imageIndex)` Reads the image indexed by `imageIndex` and returns it as a complete `BufferedImage`, using a default `ImageReadParam`.
    `abstract BufferedImage` | ImageReader.`read(int imageIndex, ImageReadParam param)` Reads the image indexed by `imageIndex` and returns it as a complete `BufferedImage`, using a supplied `ImageReadParam`.
    `static BufferedImage` | ImageIO.`read(URL input)` Returns a `BufferedImage` as the result of decoding a supplied `URL` with an `ImageReader` chosen automatically from among those currently registered.
    `BufferedImage` | ImageReader.`readThumbnail(int imageIndex, int thumbnailIndex)` Returns the thumbnail preview image indexed by `thumbnailIndex`, associated with the image indexed by `ImageIndex` as a `BufferedImage`.
    `BufferedImage` | ImageReader.`readTile(int imageIndex, int tileX, int tileY)` Reads the tile indicated by the `tileX` and `tileY` arguments, returning it as a `BufferedImage`.

    Methods in javax.imageio that return types with arguments of type BufferedImage
    Modifier and Type | Method and Description
    --- | ---
    `List<? extends BufferedImage>` | IIOImage.`getThumbnails()` Returns the current `List` of thumbnail `BufferedImage`s, or `null` if none is set.

    Methods in javax.imageio with parameters of type BufferedImage
    Modifier and Type | Method and Description
    --- | ---
    `protected static void` | ImageReader.`computeRegions(ImageReadParam param, int srcWidth, int srcHeight, BufferedImage image, Rectangle srcRegion, Rectangle destRegion)` Computes the source region of interest and the destination region of interest, taking the width and height of the source image, an optional destination image, and an optional `ImageReadParam` into account.
    `protected void` | ImageReader.`processImageUpdate(BufferedImage theImage, int minX, int minY, int width, int height, int periodX, int periodY, int[] bands)` Broadcasts the update of a set of samples to all registered `IIOReadUpdateListener`s by calling their `imageUpdate` method.
    `protected void` | ImageReader.`processPassComplete(BufferedImage theImage)` Broadcasts the end of a progressive pass to all registered `IIOReadUpdateListener`s by calling their `passComplete` method.
    `protected void` | ImageReader.`processPassStarted(BufferedImage theImage, int pass, int minPass, int maxPass, int minX, int minY, int periodX, int periodY, int[] bands)` Broadcasts the beginning of a progressive pass to all registered `IIOReadUpdateListener`s by calling their `passStarted` method.
    `protected void` | ImageReader.`processThumbnailPassComplete(BufferedImage theThumbnail)` Broadcasts the end of a thumbnail progressive pass to all registered `IIOReadUpdateListener`s by calling their `thumbnailPassComplete` method.
    `protected void` | ImageReader.`processThumbnailPassStarted(BufferedImage theThumbnail, int pass, int minPass, int maxPass, int minX, int minY, int periodX, int periodY, int[] bands)` Broadcasts the beginning of a thumbnail progressive pass to all registered `IIOReadUpdateListener`s by calling their `thumbnailPassStarted` method.
    `protected void` | ImageReader.`processThumbnailUpdate(BufferedImage theThumbnail, int minX, int minY, int width, int height, int periodX, int periodY, int[] bands)` Broadcasts the update of a set of samples in a thumbnail image to all registered `IIOReadUpdateListener`s by calling their `thumbnailUpdate` method.
    `void` | ImageReadParam.`setDestination(BufferedImage destination)` Supplies a `BufferedImage` to be used as the destination for decoded pixel data.

    Method parameters in javax.imageio with type arguments of type BufferedImage
    Modifier and Type | Method and Description
    --- | ---
    `void` | ImageWriter.`prepareInsertEmpty(int imageIndex, ImageTypeSpecifier imageType, int width, int height, IIOMetadata imageMetadata, List<? extends BufferedImage> thumbnails, ImageWriteParam param)` Begins the insertion of a new image with undefined pixel values into an existing image stream.
    `void` | ImageWriter.`prepareWriteEmpty(IIOMetadata streamMetadata, ImageTypeSpecifier imageType, int width, int height, IIOMetadata imageMetadata, List<? extends BufferedImage> thumbnails, ImageWriteParam param)` Begins the writing of a complete image stream, consisting of a single image with undefined pixel values and associated metadata and thumbnails, to the output.
    `void` | IIOImage.`setThumbnails(List<? extends BufferedImage> thumbnails)` Sets the list of thumbnails to a new `List` of `BufferedImage`s, or to `null`.

    Constructor parameters in javax.imageio with type arguments of type BufferedImage
    Constructor and Description
    `IIOImage(Raster raster, List<? extends BufferedImage> thumbnails, IIOMetadata metadata)` Constructs an `IIOImage` containing a `Raster`, and thumbnails and metadata associated with it.
    `IIOImage(RenderedImage image, List<? extends BufferedImage> thumbnails, IIOMetadata metadata)` Constructs an `IIOImage` containing a `RenderedImage`, and thumbnails and metadata associated with it.

  - ### Uses of BufferedImage in javax.imageio.event

    Methods in javax.imageio.event with parameters of type BufferedImage
    Modifier and Type | Method and Description
    --- | ---
    `void` | IIOReadUpdateListener.`imageUpdate(ImageReader source, BufferedImage theImage, int minX, int minY, int width, int height, int periodX, int periodY, int[] bands)` Reports that a given region of the image has been updated.
    `void` | IIOReadUpdateListener.`passComplete(ImageReader source, BufferedImage theImage)` Reports that the current read operation has completed a progressive pass.
    `void` | IIOReadUpdateListener.`passStarted(ImageReader source, BufferedImage theImage, int pass, int minPass, int maxPass, int minX, int minY, int periodX, int periodY, int[] bands)` Reports that the current read operation is about to begin a progressive pass.
    `void` | IIOReadUpdateListener.`thumbnailPassComplete(ImageReader source, BufferedImage theThumbnail)` Reports that the current thumbnail read operation has completed a progressive pass.
    `void` | IIOReadUpdateListener.`thumbnailPassStarted(ImageReader source, BufferedImage theThumbnail, int pass, int minPass, int maxPass, int minX, int minY, int periodX, int periodY, int[] bands)` Reports that the current thumbnail read operation is about to begin a progressive pass.
    `void` | IIOReadUpdateListener.`thumbnailUpdate(ImageReader source, BufferedImage theThumbnail, int minX, int minY, int width, int height, int periodX, int periodY, int[] bands)` Reports that a given region of a thumbnail image has been updated.

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.