跪求png解码源码实例!

2019-07-20 04:08发布

跪求png解码源码实例!唉,自己尝试用libpng,没搞定
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
12条回答
xiaoyu_stm32
1楼-- · 2019-07-21 01:15
 精彩回答 2  元偷偷看……
chengju
2楼-- · 2019-07-21 06:51
本帖最后由 chengju 于 2017-8-30 10:38 编辑

不需要libpng,移植zlib就行了,使用图中的解压函数。
chengju
3楼-- · 2019-07-21 12:47
你只要能调用这个函数就行了,其他的可以看文件结构解码,很简单
南帝
4楼-- · 2019-07-21 15:21
 精彩回答 2  元偷偷看……
chengju
5楼-- · 2019-07-21 19:31


u4 c,b,a,me,ret;

u4 line,cnt;

i4 p,pa,pb,pc;

switch(type)
{

case 0:

ret = me;

case 1:
if(cnt > 1)
{
        ret = me + a;
}else{
ret = me;
}
break;
case 2:
if(line > 1)
{
        ret = me + b;

}else{
ret = me;
}
break;
case 3:
if(line > 1)
{

        if(cnt > 1)
        {
                ret = me + (a+b)/2;
        }else{

                ret = me + b/2;
        }


}else{

        if(cnt > 1)
        {
                ret = me + a/2;

        }else{
                ret = me;
        }



}
break;
case 4:
if(line > 1)
{

        if(cnt > 1)
        {
                p = a + b - c;

                pa = p - a;
                if(pa < 0) pa = -pa;

                pb = p - b;
                if(pb < 0) pb = -pb;

                pc = p - c;
                if(pc < 0) pc = -pc;


                if(pa <= pb && pa <= pc) p = a;
                else if(pb <= pc) p = b;
                else p = c;



                ret = me + p;
        }else{

                ret = me + b;
        }


}else{


        if(cnt > 1)
        {
                ret = me + a;
        }else{
                ret = me;
        }


}
break;

}
chengju
6楼-- · 2019-07-21 22:35
 精彩回答 2  元偷偷看……

一周热门 更多>