The Java Developers Almanac 1.4


Order this book from Amazon.

   
Home > List of Packages > java.awt.image  [21 examples] > Effects  [6 examples]

e680. Brightening or Darkening an RGB Buffered Image

This example demonstrates how to brighten or darken an RGB buffered image by scaling the red, green, and blue values in the image.
    // To create a buffered image, see e666 Creating a Buffered Image
    
    // Brighten the image by 30%
    float scaleFactor = 1.3f;
    RescaleOp op = new RescaleOp(scaleFactor, 0, null);
    bufferedImage = op.filter(bufferedImage, null);
    
    // Darken the image by 10%
    scaleFactor = .9f;
    op = new RescaleOp(scaleFactor, 0, null);
    bufferedImage = op.filter(bufferedImage, null);
If the image is not an RGB image, the following code converts a non-RGB image to an RGB buffered image:
    // Get non-RGB image
    Image image = new ImageIcon("image.gif").getImage();
    
    // Create an RGB buffered image
    BufferedImage bimage = new BufferedImage(image.getWidth(null), image.getHeight(null), BufferedImage.TYPE_INT_RGB);
    
    // Copy non-RGB image to the RGB buffered image
    Graphics2D g = bimage.createGraphics();
    g.drawImage(image, 0, 0, null);
    g.dispose();

 Related Examples
e675. Flipping a Buffered Image
e676. Converting a Colored Buffered Image to Gray
e677. Blurring a Buffered Image
e678. Sharpening a Buffered Image
e679. Embossing a Buffered Image

See also: Buffered Images    Images    Volatile Images   


© 2002 Addison-Wesley.