获取文件信息.bmp

时间:2015-10-31 13:05:56

标签: encoding metadata bmp

我对.bmp很新 我想了解更多相关信息。我现在有一个.bmp文件,我想知道我会在哪里获得标题信息,文件信息等。 实际上,我需要在图像背后写入代码(不打开图像本身,但看看那里写的是什么 - 位图,标题等)。 我想访问您可以在维基百科here

上阅读的信息

我不知道如何打开文件来获取这些信息...我虽然可以在某个texteditor中以某种方式阅读它。

有人能指出我正确的方向吗?

2 个答案:

答案 0 :(得分:0)

这是一个很好的页面,详细介绍了.bmp图像的二进制文件格式: http://www.fileformat.info/format/bmp/egff.htm

当然,微软本身也有文档: https://msdn.microsoft.com/en-us/library/windows/desktop/dd183374(v=vs.85).aspx https://msdn.microsoft.com/en-us/library/windows/desktop/dd183376(v=vs.85).aspx

要查看文件中的原始十六进制数据,请使用十六进制编辑器,例如http://mh-nexus.de/en/hxd

答案 1 :(得分:0)

said

  

假设我想在HEX Code中找到图像的大小。我如何获得HEX代码

因此,选择任何BMP文件并在十六进制编辑器中打开它。来自specification you link to

  

所有版本的BMP格式文件都以以下14字节[文件]标题开头:

     

[...]

     

版本4.x BMP文件以与v2.x和v3.x BMP文件相同的14字节头开头。文件头后面还有一个位图头,它是v3.x位图头

的扩展版本
typedef struct _Win4xBitmapHeader
{
    DWORD Size;            /* Size of this header in bytes */
    LONG  Width;           /* Image width in pixels */
    LONG  Height;          /* Image height in pixels */
    [...]
} WIN4XBITMAPHEADER;

所以第一个标题是14个字节。第15-18字节定义第二个标题的长度。然后跟随两个长片,每个长四个字节,给你图像的宽度和高度。

因此字节19-22给出宽度,字节23-26给出高度 - 对于版本3或4位图。版本1和版本2分别为每个维度使用一个字节,因此请务必先检查位图版本(通过分析标题大小)。