linux 读取png图片大小,读取 png 图片的宽高信息

本文介绍了一种使用C++读取PNG图片宽高信息的方法。通过定义结构体并读取文件的特定偏移量,获取PNG图片的宽度和高度。在读取文件时,必须以二进制模式打开,以避免0D 0A字符导致的错误。函数成功读取后,返回0,否则返回-1。
摘要由CSDN通过智能技术生成

#include

// 保留,在读取 png 头部信息的是,每次读取到 0D 0A 读取就会产生错误,如果 0D 0A 修改为其他的数据,则数据可以正常读取,不知道为什么 ----文件打开的时候, 将读取文件的方式设置为 二进制 流文件读取就可以。

//typedef struct

//{

//    char HeadInfo[8];        // 文件头信息

//    int IhderChunkLength;    // IHDR 数据块的长度信息

//    int IhderChunkType;        // IHDR 数据块类型码 // 下面是数据块的具体数据了, 最前面两个是png 图片的宽高

//    int PngImgWidth;        // 宽

//    int PngImgHeght;        // 高

//} PNG_FILE_HEAD;

/*

* 函数说明:    读取 png 文件中,图片的宽高信息

* 参数描述:    pathName, 输入参数,文件的路径名信息

*                w, h, 输出参数,图片的宽高信息

* 返回值:        0,成功

*                -1,失败

*    备注信息:    PNG 文件头数据信息如下所示:

*

*                文件头信息:8 字节

*                IHDR 数据块的长度信息:4 字节

*                IHDR 数据

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值