唉,晕啊晕啊public class UTImageFilter extends RGBImageFilter { private Color paintColor; public UTImageFilter(Color c) { Assertor.notNull(c);
canFilterIndexColorModel = true; paintColor = c; } public int filterRGB(int x, int y, int rgb) { DirectColorModel cm = (DirectColorModel)ColorModel.getRGBdefault(); int alpha = cm.getAlpha(rgb); int red = paintColor.getRed(); int green = paintColor.getGreen(); int blue = paintColor.getBlue(); return alpha << 24 | red << 16 | green << 8 | blue; } }// call method public static Image getPaintImage(Image oldImg, Color c) { Assertor.notNull(oldImg); Assertor.notNull(c); UTImageFilter imgFilter = new UTImageFilter(c); Image newImg = null; newImg = Toolkit.getDefaultToolkit().createImage( new FilteredImageSource(oldImg.getSource(), imgFilter)); return newImg; }
{
private Color paintColor; public UTImageFilter(Color c)
{
Assertor.notNull(c);
canFilterIndexColorModel = true; paintColor = c;
} public int filterRGB(int x, int y, int rgb)
{
DirectColorModel cm = (DirectColorModel)ColorModel.getRGBdefault(); int alpha = cm.getAlpha(rgb); int red = paintColor.getRed(); int green = paintColor.getGreen(); int blue = paintColor.getBlue(); return alpha << 24 | red << 16 | green << 8 | blue;
}
}// call method
public static Image getPaintImage(Image oldImg, Color c)
{
Assertor.notNull(oldImg);
Assertor.notNull(c); UTImageFilter imgFilter = new UTImageFilter(c); Image newImg = null; newImg =
Toolkit.getDefaultToolkit().createImage(
new FilteredImageSource(oldImg.getSource(), imgFilter)); return newImg;
}