Java PGM 2 JPEG / PNG - PullRequest
       40

Java PGM 2 JPEG / PNG

0 голосов
/ 09 августа 2009

У меня есть массив int, содержащий значения шкалы яркости от 0 до 254, у меня также есть размер x и y изображения. Создать изображение в формате pgm легко, но я хочу отобразить его в формате jsp, поэтому мне нужно каким-то образом преобразовать его в изображение в формате jpeg или png. Если вы предлагаете jai, то, пожалуйста, скажите мне, какие классы посмотреть, или как на самом деле это сделать в jai. Заранее большое спасибо.

Ответы [ 2 ]

2 голосов
/ 09 августа 2009

Может быть, пропустить PGM полностью?

int[] myImage = getGreyscaleIntArray();

BufferedImage im = new BufferedImage(width,height,BufferedImage.TYPE_BYTE_GRAY);
WritableRaster raster = im.getRaster();
for(int h=0;h<height;h++)
{
    for(int w=0;w<width;w++)
    {
        raster.setSample(w,h,0, myImage[h * width + w]); 
    }
}

ByteArrayOutputStream myJpg = new ByteArrayOutputStream();
javax.imageio.ImageIO.write(im, "jpg", myJpg);

использует API JAI ImageIO , в частности, служебный класс ImageIO

образец WriteableRaster от поваренная книга по обработке изображений Java

0 голосов
/ 09 августа 2009

ImageMagick хорошо работает для преобразования изображений, а Jmagick предоставляет интерфейс для вызова непосредственно из Java-программ.

...