import java.applet.*;
import java.awt.*;
import java.awt.image.*;
import java.awt.event.*;
public class AlphaImageApplet extends Applet{
Image img;
Image alphaImage;
public void init()
{
img=getImage(getDocumentBase(),"flower.gif");
createPicture(255);
Scrollbar myScroll = new Scrollbar(Scrollbar.HORIZONTAL,0,1,0,255);
add(myScroll);
myScroll.addAdjustmentListener(new AdjustmentListener(){
public void adjustmentValueChanged(AdjustmentEvent evt){
int x = evt.getValue();
createPicture(255-x);
repaint();
}
});
}
public void paint(Graphics g){
g.drawImage(alphaImage,0,0,this);
g.drawString("alpha image",110,50);
g.drawImage(img,0,85,this);
g.drawString("origin image",110,140);
}
public void createPicture(int alpha){
AlphaFilter filter=new AlphaFilter(alpha);
alphaImage=createImage(new FilteredImageSource(
img.getSource(), filter));
}
}
class AlphaFilter extends RGBImageFilter{
int alpha;
public AlphaFilter(int alpha){
this.alpha=alpha;
}
public int filterRGB(int x, int y, int rgb){
return (alpha<<24)+(rgb & 0x00ffffff);
}
}