Тип Java, который представляет изображение PNG? - PullRequest
1 голос
/ 22 декабря 2009

Что такое тип Java, который может содержать реализацию PNG и предоставлять доступ к пиксельному буферу?

Ответы [ 4 ]

14 голосов
/ 22 декабря 2009
BufferedImage img = ImageIO.read(new File("my.png"));
int color = img.getRGB(23,12);
3 голосов
/ 22 декабря 2009

Я бы взглянул на Java Advanced Imaging , он обрабатывает несколько типов файлов изображений.

1 голос
/ 23 декабря 2009

Если вы хотите выполнять пиксельные операции над всем изображением, я обнаружил, что каждый раз вызывать метод getRGB () довольно медленно. В этом случае вы можете попытаться получить доступ к фактическому массиву пикселей, содержащему данные изображения, используя что-то вроде:

byte[] pixel_array = ((DataBufferByte)img.getRaster().getDataBuffer()).getData()

Может быть более гибкий способ, который не делает никаких предположений о типе данных массива.

1 голос
/ 22 декабря 2009

Посмотрите ImageIO и его многочисленные статические помощники для чтения и записи байтов / потоков, содержащих изображение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...