OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 8824|回复: 13

跪求png解码源码实例!

[复制链接]

4

主题

8

帖子

0

精华

新手上路

积分
44
金钱
44
注册时间
2015-1-8
在线时间
0 小时
发表于 2015-1-8 19:53:17 | 显示全部楼层 |阅读模式
5金钱
跪求png解码源码实例!唉,自己尝试用libpng,没搞定

最佳答案

查看完整内容[请看2#楼]

已经搞定了,参考 http://www.openedv.com/posts/list/16348.htm
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

4

主题

8

帖子

0

精华

新手上路

积分
44
金钱
44
注册时间
2015-1-8
在线时间
0 小时
 楼主| 发表于 2015-1-8 19:53:18 | 显示全部楼层
已经搞定了,参考 http://www.openedv.com/posts/list/16348.htm
回复

使用道具 举报

88

主题

7377

帖子

5

精华

资深版主

Rank: 8Rank: 8

积分
14980
金钱
14980
注册时间
2013-11-13
在线时间
1823 小时
发表于 2015-1-8 20:17:25 | 显示全部楼层
emwin自带png解码。
开往春天的手扶拖拉机
回复

使用道具 举报

4

主题

8

帖子

0

精华

新手上路

积分
44
金钱
44
注册时间
2015-1-8
在线时间
0 小时
 楼主| 发表于 2015-1-9 09:00:17 | 显示全部楼层
回复【2楼】zuozhongkai:
---------------------------------
不使用emwin,要如何显示png
回复

使用道具 举报

28

主题

1489

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1656
金钱
1656
注册时间
2013-7-24
在线时间
1 小时
发表于 2015-1-9 09:18:07 | 显示全部楼层
我也知道[libpng]。但并没应用过。
于20150522停用该账号:http://www.microstar.club
回复

使用道具 举报

28

主题

1489

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1656
金钱
1656
注册时间
2013-7-24
在线时间
1 小时
发表于 2015-1-9 09:29:08 | 显示全部楼层
参考emWin的内存消耗,我想想还是算了:

Memory usage
The PNG decompression uses app. 21Kbytes of RAM for decompression independent
of the image size and a size dependent amount of bytes. The RAM requirement can
be calculated as follows:
App. RAM requirement = (xSize + 1) * ySize * 4 + 54Kbytes[/mw_shl_code]

附上emWin PNG源码。

emWin_V5.26.rar

315.32 KB, 下载次数: 621

于20150522停用该账号:http://www.microstar.club
回复

使用道具 举报

4

主题

8

帖子

0

精华

新手上路

积分
44
金钱
44
注册时间
2015-1-8
在线时间
0 小时
 楼主| 发表于 2015-1-9 09:50:35 | 显示全部楼层
回复【5楼】styleno1:
---------------------------------
你这个源码就是libpng的,但是我没搞定,所以想要一个带有实例的来参考下!
回复

使用道具 举报

19

主题

84

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
439
金钱
439
注册时间
2016-6-8
在线时间
47 小时
发表于 2016-9-12 20:36:47 | 显示全部楼层
我也需要做png解码,您是怎么做的呀,我也是不使用emwin,求指导
回复

使用道具 举报

2

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
58
金钱
58
注册时间
2016-10-11
在线时间
11 小时
发表于 2017-8-30 10:30:41 | 显示全部楼层
本帖最后由 chengju 于 2017-8-30 10:38 编辑

不需要libpng,移植zlib就行了,使用图中的解压函数。
QQ图片20170830103645.png
回复

使用道具 举报

2

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
58
金钱
58
注册时间
2016-10-11
在线时间
11 小时
发表于 2017-8-30 10:42:05 | 显示全部楼层
你只要能调用这个函数就行了,其他的可以看文件结构解码,很简单
回复

使用道具 举报

37

主题

146

帖子

0

精华

新手入门

积分
11
金钱
11
注册时间
2014-6-4
在线时间
90 小时
发表于 2017-11-18 10:09:32 | 显示全部楼层
chengju 发表于 2017-8-30 10:42
你只要能调用这个函数就行了,其他的可以看文件结构解码,很简单

如何反滤波,显示的图片不对劲。求解。
一路狂奔!
回复

使用道具 举报

2

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
58
金钱
58
注册时间
2016-10-11
在线时间
11 小时
发表于 2019-1-16 17:15:17 | 显示全部楼层


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;

}
回复

使用道具 举报

2

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
58
金钱
58
注册时间
2016-10-11
在线时间
11 小时
发表于 2019-1-16 17:33:16 | 显示全部楼层
回复

使用道具 举报

10

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
76
金钱
76
注册时间
2019-9-11
在线时间
20 小时
发表于 2019-9-28 20:24:51 | 显示全部楼层
chengju 发表于 2017-8-30 10:30
不需要libpng,移植zlib就行了,使用图中的解压函数。

如何移植zlib,可有详细介绍?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-9 03:41

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表