Mesclar dois ColorMatrix ou Aplicar dois ou mais ColorMatrix simultaneamente no Imageview
Estou alterando brilho, contraste, saturação e matiz de um ImageView. Eu pesquisei muito sobre isso.
Eu tenho um código que funciona comColorMatrix.
[1.] ParaBrilho ColorMatrix é alguma coisa como
float brightness = (-50F * 1.5F);
ColorMatrix cmB = new ColorMatrix();
cmB.set(new float[] { 1, 0, 0, 0, brightness,
0, 1, 0, 0,brightness,
0, 0, 1, 0, brightness,
0, 0, 0, 1, 0 });
myImageView.setColorFilter(new ColorMatrixColorFilter(cmB));
que funciona corretamente.
[2.] ParaContraste ColorMatrix é algoDiferente, que também funciona corretamente.
MAS, todos esses trabalhos da ColorMatrixindividualmente. Significa que o efeito do último ColorMatrix aplicado é apenas a cena no ImageView, porque ele faz exatamente isso, o queremove o efeito da aplicação anterior O ColorMatrix e as configurações aplicam-se pela última vez ao ColorMatrix.
Agora eu quero mesclar ou misturar o ColorMatrix of All Simultaneously. Significa querer aplicar ColorMatrix of Contrast no efeito de ColorMatrix de Brightnrs / Saturation / Hue.