Comment utiliser le PNG IDAT morceau?

J'essaie de comprendre comment les données sont stockées dans IDAT morceau. Je suis en train d'écrire une petite classe PHP et je peux récupérer la plupart des morceaux de l'information, mais ce que je reçois pour IDAT ne correspond pas à les pixels de mon image :

Comment utiliser le PNG IDAT morceau? Il est de 2×2px truecolor avec alpha (bitdepth 8).

Mais quand je interpréter IDAT de données comme ceci:

current(unpack('H*',gzuncompress($idat_data)));

- Je obtenir

00000000ffffff00ffffff000000

Je ne comprends pas comment il peut correspondre pixels. Ou est-ce mon code qui corrompt les données?

Merci pour votre aide!

EDIT: je obtenir

08d705c101010000008010ff4f1750a93029e405fb

que hex données compressées, donc il semble que je la perte de plusieurs octets après la décompression.

Comment utiliser le PNG IDAT morceau?

OriginalL'auteur MatTheCat | 2011-09-03