2010-02-03 5 views
2

Как преобразовать строку, содержащую jpeg или png, в массив (желательно один размер) пикселей? Идеально использовать классы, встроенные в java?Преобразование jpeg/png в массив пикселей в java

+0

строка? в каком формате? base64? шестигранный? – Bozho

+0

Эта строка содержит имя файла файла или данные необработанного изображения? –

+0

необработанный изображение данные. – Matt

ответ

5

Получается, что вам нужно commons-fileupload. Посмотрите на user guide, как получить изображение InputStream. Оттуда вы можете просто позвонить:

BufferedImage image = ImageIO.read(item.getInputStream()); 

От здесь есть много способов:

  • перебирает размеры изображения и для каждого х и у вызова int rgb = image.getRGB(x, y);
  • же, как указано выше, но вызов getRed(x, y), getGreen(x, y), getBlue(x, y)
  • получить ColorModel и вызвать описанные выше способы Там
  • гр все getRGB(startX, startY, w, h, rgbArray, offset, scansize)
  • вызов getData(), который возвращает Raster и вызовите getPixes(..) там
0

Использование PixelGraber. Он возвращает одномерный массив данных RGB.