Here you can find the source of makeColorTransparent(BufferedImage image, Color color)
Parameter | Description |
---|---|
bufferedImage | la imagen que se desea hacer transparente |
color | el color que se desea hacer transparente |
public static BufferedImage makeColorTransparent(BufferedImage image, Color color)
//package com.java2s; //License from project: Open Source License import java.awt.*; import java.awt.image.*; import javax.swing.*; public class Main { /**// w ww .ja v a2 s.c om * Hace que el color seleccionado sea transparente en un BufferedImage * * @param bufferedImage la imagen que se desea hacer transparente * @param color el color que se desea hacer transparente * * @return BufferedImage con el color seleccionado transparente */ public static BufferedImage makeColorTransparent(BufferedImage image, Color color) { BufferedImage bi = new BufferedImage(image.getWidth(), image.getHeight(), BufferedImage.TYPE_INT_ARGB); Graphics2D g = bi.createGraphics(); g.setComposite(AlphaComposite.Src); g.drawImage(image, null, 0, 0); g.dispose(); for (int i = 0; i < bi.getHeight(); i++) { for (int j = 0; j < bi.getWidth(); j++) { if (bi.getRGB(j, i) == color.getRGB()) { bi.setRGB(j, i, 0x8F1C1C); } } } return bi; } /** * Obtiene el ancho de una Image */ public static int getWidth(Image imagen) { int width = new ImageIcon(imagen).getIconWidth(); return width; } /** * Obtiene el ancho de un IconImage */ public static int getWidth(ImageIcon imagen) { return imagen.getIconWidth(); } /** * Obtiene el alto de una Image */ public static int getHeight(Image imagen) { int height = new ImageIcon(imagen).getIconHeight(); return height; } /** * Obtiene el alto de un IconImage */ public static int getHeight(ImageIcon imagen) { return imagen.getIconHeight(); } }