Порядок байтов формата файла PNG?

Я не уверен, является ли порядок байтов правильным словом, но..

Я анализировал через файл PNG, и я заметил, что все целочисленные значения находятся в обратном порядке байтов. Действительно ли это верно?

Например, ширина и высота хранятся в файле PNG как целые числа без знака на 32 бита. Мое изображение 16x16 и в файле его сохраненный как:

00 00 00 10

когда это должно быть:

10 00 00 00

Это верно или является там чем-то, что я пропускаю?

20
задан caf 5 March 2010 в 02:09
поделиться

2 ответа

Да, согласно спецификации, целые числа должны быть в сетевом порядке байтов (с прямым порядком байтов):

Все целые числа, требующие более одного байта, должны быть в сетевом порядке байтов: старший байт идет первым, затем младшие байты в порядке убывания значимости (MSB LSB для двухбайтовых целых чисел, MSB B2 B1 LSB для четырехбайтовых целых чисел). Самый старший бит (значение 128) байта нумеруется как бит 7; младший бит (значение 1) нумеруется битом 0. Значения беззнаковые, если не указано иное. Значения, явно отмеченные как подписанные, представлены в виде дополнения до двух.

http://www.w3.org/TR/2003/REC-PNG-20031110/#7Integers-and-byte-order

19
ответ дан 30 November 2019 в 00:47
поделиться

Целые числа в PNG находятся в сетевом порядке байтов (с прямым порядком байтов).

См .: спецификация .

8
ответ дан 30 November 2019 в 00:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: