读着libpng的手册写一个读取图片的demo,在调用png_read_info的时候出现了:
libpng Error:read error
一头雾水.
开始以为在判断是否是png时读了太长了:
png_sig_cmp(header,0,HEADER)
这里的header我读了8,手册上说不能超过8.但是改小了也没用,最后发现原来是开始的时候用fread读了太多(一下子把数据都读了),
正确的话
fread(header,1,HEADER,fp);
里的header不应该读取超过8个.
改了这个之后就好了.