我正在尝试将位图图像转换为 C# 中的字节数组。但是根据位图格式,前 12 个字节将被分配给位图标头。
// Converting the bitmap image data to byte array
byte[] bitmapFileData = System.IO.File.ReadAllBytes(bitmapImageFilePath);
我调试了这段代码,但是对于我给定的单色位图图像,前 56 个字节填充了一些其他数据,然后从 (0, 0, 0, 255, 255,255,255,255 ......) 开始。由于其单色位图图像,字节数组仅包含(0,0,0,255 和 255,255,255,255)的 RGB。
我的问题是,如何从字节数组中过滤位图标头,以便我可以将数组的其余部分用作位图数据。我知道位图格式的偏移值会解释。那么字节数组的哪个元素给出了偏移值呢?
如果这是一个基本问题或在不同论坛上讨论过,请原谅。我是成像部分的新手,做了很多谷歌搜索,但无法得到完美的理解。
你能提供我需要的信息吗?
意图: 1. 将位图图像转换为二进制数据 2. 了解图像格式的东西
我在哪里使用: 1. 在其中一台打印机中打印给定的位图图像,该打印机将获取图像的十六进制字符串或二进制数据。