/* 明るくする ImageFilter Ver 0.10 */ /* */ /* */ /* by Atsushi 98/4/9 */ package net.antun.lib.awt.image; import java.awt.image.RGBImageFilter; public class BrightImageFilter extends RGBImageFilter { /* --- Field --- */ private int deltaR,deltaB,deltaG; /* --- Constructor --- */ public BrightImageFilter(int delta) { this.deltaR=delta; this.deltaG=delta; this.deltaB=delta; canFilterIndexColorModel=true; } public BrightImageFilter(int deltaR,int deltaG,int deltaB) { this.deltaR=deltaR; this.deltaG=deltaG; this.deltaB=deltaB; canFilterIndexColorModel=true; } /* --- フィルタリング --- */ public int filterRGB(int x,int y,int rgb) { int r,g,b; r=Math.min(Math.max(((rgb>>16) & 0xff)+deltaR,0),255); g=Math.min(Math.max(((rgb>> 8) & 0xff)+deltaG,0),255); b=Math.min(Math.max(((rgb>> 0) & 0xff)+deltaB,0),255); return ((rgb & 0xFF000000) | (r<<16) | (g<<8) | (b<<0)); } /* --- 文字列化 --- */ public String toString() { return getClass().getName()+"[delta(R)="+deltaR+",delta(G)="+deltaG+ ",delta(B)="+deltaB+"]"; } }