Voy a utilizar el método getRGB de BufferedImage. Quiero verificar los píxeles de una imagen y ver cuál de ellos tiene transparencia (en general, los píxeles que tendré transparentes serán totalmente transparentes). ¿Cómo puedo obtenerlo desde el int que getRGB devuelve?Java BufferedImage cómo saber si un píxel es transparente
6
A
Respuesta
17
BufferedImage img = ....
public boolean isTransparent(int x, int y) {
int pixel = img.getRGB(x,y);
if((pixel>>24) == 0x00) {
return true;
}
}
De img curso tiene que estar en la TYPE_4BYTE_ABGR formato correcto o algún formato que soporta canales alfa ELSE IF siempre será opaco (es decir, 0xFF).
0
el cambio correcto para obtener el valor alfa en un int es con >>> debido al bit de signo.
ejemplo: int alpha1 = (pixel1 & 0xff000000) >>> 24;
Cuestiones relacionadas
- 1. ¿Cómo puedo saber dónde tiene BufferedImage Alpha en Java?
- 2. Como lee el color del píxel en un BufferedImage java con la transparencia
- 3. Hacer un píxel transparente en Matlab
- 4. ¿Cómo puedo saber si un entero Java es nulo?
- 5. Borrar un BufferedImage transparente lo más rápido posible
- 6. Cómo reemplazar colores en BufferedImage en JAVA
- 7. BufferedImage to Bytes Java
- 8. ¿Cómo puedo saber si Java es Sun/Oracle/OpenJDK?
- 9. ¿Cómo saber si una clase de Java es abstracta?
- 10. Cómo colorear un píxel?
- 11. cómo escalo un BufferedImage
- 12. BufferedImage a BMP en Java
- 13. Cómo hacer que un color transparente en un BufferedImage y guardar como PNG
- 14. ¿Cómo saber si un objeto es un objeto RegExp?
- 15. ¿Cómo saber si un manejador de archivo es un socket?
- 16. ¿Cómo saber si un archivo es un enlace?
- 17. ¿Cómo saber si mi componente Java está en un Applet?
- 18. ¿Cómo saber si una cadena es xml?
- 19. ¿Cómo saber si la fecha es hoy?
- 20. ¿Cómo convierto un InputStream a BufferedImage en Java/Groovy?
- 21. Cómo saber si un PropertyInfo es una colección
- 22. ¿Cómo puedo saber si un IQueryable es IQueryableQueryable?
- 23. ¿Cómo saber si un ensamblado .NET es dinámico?
- 24. ¿Cómo saber si un contexto OpenGL es hardware acelerado?
- 25. ¿Cómo saber si un modelo es nuevo o no?
- 26. ¿Cómo puedo saber si un MotionEvent es relativo o absoluto?
- 27. ¿Cómo saber si un hash Perl es multidimensional?
- 28. ¿Cómo saber si un tipo es una clase estática?
- 29. Determinar si un GIF es transparente en Python
- 30. ¿Cómo puedo saber genéricamente si una clase Java es un tipo primitivo?
'int transparency = ((img.getRGB (x, y) & 0xff000000) >> 24);' El primer byte es el valor alfa. – Chad