2016-02-24 4 views
1

Я пытаюсь распечатать растровое изображение. Для печати изображения на мой принтер нужен массив байтов растрового изображения. Размер изображения составляет 128x128 пикселей.Java Размер байта Размер массива

Вот код, как я читаю и преобразую изображение в массив байтов.

BufferedImage image = ImageIO.read(new File("test.bmp")); 
ByteArrayOutputStream baos = new ByteArrayOutputStream(); 
ImageIO.write(image, "bmp", baos); 
byte[] imageInByte = baos.toByteArray(); 
System.out.println(imageInByte.length); 

После выполнения кода imageInByte длина массива является 2110. Что я здесь отсутствует? Должна ли длина массива 16384 (128 x 128)?

ответ

1

Вы принимаете один байт на пиксель и информацию заголовка. Заголовок «bitsPerPixel» будет играть большую роль в определении того, сколько пространства занимают данные изображения. См. Структуру растрового файла here.

Смежные вопросы