私は androidjhlabs.jar のいくつかのフィルターを適用し、その作業も私のために行いました。機能するフィルターは次のとおりです。 GaussianFilter ContrastFilter InverFilter GrayScalFilter MarbleFilter WeaveFilter GainFilter SolarFilter HSBFilter しかし、適切な出力が得られない他のフィルターをいくつか試しましたが、一部の画像が黒に変換され、一部が白に変換されました。つまり、適切なスケール、ランダム性を知らなかったということです。 、Amount、Turbulence、Gridtype など。水フィルターを試しましたが、中心点にのみ適用されているため、穴の画像には含まれていません。コードは次のとおりです。
public static Bitmap setWaterFilter(Bitmap src)
{
int width=src.getWidth();
int height=src.getHeight();
int pixel;
WaterFilter filter=new WaterFilter();
int[] bittoarr = AndroidUtils.bitmapToIntArray(src);
int[] result=filter.filter(bittoarr, width, height);
Bitmap applied = Bitmap.createBitmap(result, width, height,
Config.ARGB_8888);
return applied;
}
そして、私は次のようにソースを渡しました:
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.px);
bitmap=Effects.setWaterFilter(bitmap);
im.setImageBitmap(bitmap);
誰もがそれを解決する方法を知っています.BoxBlur、Cropなどの他のフィルターも意味します.