Я не уверен, является ли порядок байтов правильным словом, но..
Я анализировал через файл PNG, и я заметил, что все целочисленные значения находятся в обратном порядке байтов. Действительно ли это верно?
Например, ширина и высота хранятся в файле PNG как целые числа без знака на 32 бита. Мое изображение 16x16 и в файле его сохраненный как:
00 00 00 10
когда это должно быть:
10 00 00 00
Это верно или является там чем-то, что я пропускаю?
Да, согласно спецификации, целые числа должны быть в сетевом порядке байтов (с прямым порядком байтов):
Все целые числа, требующие более одного байта, должны быть в сетевом порядке байтов: старший байт идет первым, затем младшие байты в порядке убывания значимости (MSB LSB для двухбайтовых целых чисел, MSB B2 B1 LSB для четырехбайтовых целых чисел). Самый старший бит (значение 128) байта нумеруется как бит 7; младший бит (значение 1) нумеруется битом 0. Значения беззнаковые, если не указано иное. Значения, явно отмеченные как подписанные, представлены в виде дополнения до двух.
http://www.w3.org/TR/2003/REC-PNG-20031110/#7Integers-and-byte-order
Целые числа в PNG находятся в сетевом порядке байтов (с прямым порядком байтов).
См .: спецификация .