4017|7

720

帖子

0

TA的资源

纯净的硅(中级)

楼主
 

BMP格式图片在改变其大小时遇到的问题 [复制链接]

   前两天学习FATFS文件系统,通过一段的努力最终算是把文件读出来了,但是中间遇到了好些问题,其中一个就是我写过底层接口函数后,就是不能读出文件数据,单独把底层接口函数运用一下,仅仅读写一扇的数据却是可以实现的,这就把我给搞蒙了,整理这两项的兼容解决了好几天,也没让它们乖乖的给配合工作起来,后来一气之下,又建了个工程,下了个R0.05版本的FATFS,添加进去,再把底层接口函数写进去,恩………………!!!好了,读出数据了。下面是我的一个小小验证程序。呵呵……复制一个240*291BMP格式的图片,呵呵显示了……(手机照的,还是手机,不太清楚啊)

      

但是,接着问题就业接踪而来了,显示稍微大点的图片可以好好的显示出来,(相对于240*320的液晶屏)但是把图片稍微缩小,然后显示就出错了,发现数据不但出错(颜色都没了,成黑白屏了),而且图片发生了很大的位移偏差(右边的图显示到左边了),

   

原来怀疑程序有问题,但是显示稍微的大点的图片是可以的啊,可还是查看程序很长一段时间,结果还是一样的,程序不知是哪里有问题,应该没问题,那好了,程序没问题,硬件没问题,那么不止剩下了图片了么?可图片会有问题么?带着很大的疑问还是去查看一下图片,结果让我真的发现了原来图片是“有问题”的。

 

这是可以显示的240*291的图片,可以清楚的看到其文件大小为209,574字节,这正好为

240*291*3+54注:240*291的图片,24位的BMP格式图片,文件属性字节大小为54

UltraEdit软件里看也可以验证。

但是图片缩小后

缩小到141*214大小后起文件大小变为90,790字节(还为24位图)

UltraEdit软件里显示文件大小为0x0162A690790),数据偏移量0x3654),这样问题就出来了,文件总共为90790个字节,但是按照图片大小算出来为(141*214*3+54=90576),这样整整相差214个字节,难怪我们写出的图片颜色不对,而且位置也偏移了,问题就是这个,这个问题自己还没上网查,先到论坛里发一下贴,提出自己遇到的问题,有朋友用到这些东西是可以想到这一点……有高手也可以先说说哦……查资料去喽!!!

 

FATFS(实现) - 副本.zip

398.07 KB, 下载次数: 6

简单的利用FATFS写BMP格式图片

最新回复

学习学习!  详情 回复 发表于 2010-8-2 20:10
点赞 关注

回复
举报

4997

帖子

19

TA的资源

裸片初长成(初级)

沙发
 
哈哈,不错啊,恭喜啊,有那这么大的成果。
 
个人签名我的博客
 

回复

1万

帖子

16

TA的资源

版主

板凳
 

楼主强,我要向楼主学习

;P ;P ;P
 
个人签名http://shop34182318.taobao.com/
https://shop436095304.taobao.com/?spm=a230r.7195193.1997079397.37.69fe60dfT705yr
 
 

回复

2886

帖子

0

TA的资源

五彩晶圆(初级)

4
 
不错,恭喜,向楼主学习
 
 
 

回复

720

帖子

0

TA的资源

纯净的硅(中级)

5
 

回复 沙发 zhaojun_xf 的帖子

谢谢喽……又重新整理了一下程序,终于搞定,呵呵……
 
 
 

回复

602

帖子

0

TA的资源

一粒金砂(中级)

6
 

回复 5楼 cuizhihao 的帖子

最终原因是什么呢,是你说的那种原因吗?我以前做图片显示的时候也出现像你一样的现象,就是图片变小后显示就有点问题!
 
 
 

回复

720

帖子

0

TA的资源

纯净的硅(中级)

7
 

回复 6楼 zhandetian 的帖子

嗯,用软件处理时出的错,应该不是程序的错……
 
 
 

回复

12

帖子

0

TA的资源

一粒金砂(初级)

8
 

学习学习!

学习学习!
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表