Прозрачность пикселя на Java
Задача:
Узнать прозрачный или нет пиксель с определенными координатами в изображении на языке Java.Решение:
import java.awt.Color;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
/**
*
* @author UpRead.ru
*/
public class ImageAlfa {
public static boolean checkPix(BufferedImage bi, int x, int y){
Object colorInfo = bi.getRaster().getDataElements(x, y, null);
int rgbColor = bi.getColorModel().getRGB(colorInfo);
Color cl = new Color(rgbColor, true);
return (cl.getAlpha() == 0);
}
public static void main(String[] args) throws IOException {
BufferedImage image = ImageIO.read(new File("C:\\rab\\im\\art217-1.png"));
int x = 320;
int y = 211;
boolean isAlfa = checkPix(image, x, y);
if (isAlfa) System.out.println("Пиксель прозрачный");
else System.out.println("Пиксель непрозрачный");
}
}
Комментарий
Программа демонстрирует работу метода checkPix. Метод принимает изображение и координаты пикселя, а выдает булевую переменную. Изображение может быть, например, таким. Просто картинка понравилась :)
Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.
Программы на заказ
Отзывы
Контакты