negative.java

来自「java 完全探索的随书源码」· Java 代码 · 共 52 行

JAVA
52
字号
// Negative.java

import java.awt.*;
import java.awt.image.*;
import java.applet.Applet;

public class Negative extends Applet
{
   Image im, imInv;
   int width;

   public void init ()
   {
      MediaTracker mt = new MediaTracker (this);
      im = getImage (getCodeBase (), "tiger.jpg");
      mt.addImage (im, 0);

      try
      {
         mt.waitForID (0);
      }
      catch (InterruptedException e) {}

      width = im.getWidth (this);
      int height = im.getHeight (this);

      int [] pixels = new int [width * height];

      PixelGrabber pg = new PixelGrabber (im, 0, 0, width, height,
                                          pixels, 0, width);

      try
      {
         pg.grabPixels ();
      }
      catch (InterruptedException e) {}

      int size = width * height;
      for (int i = 0; i < size; i++)
           pixels [i] = pixels [i] ^ 0xffffff;

      imInv = createImage (new MemoryImageSource (width, height,
                                                  pixels, 0, width));
   }

   public void paint (Graphics g)
   {
      g.drawImage (im, 0, 0, this);
      g.drawImage (imInv, width, 0, this);
   }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?