在C ++中迭代.bmp的像素

时间:2015-01-30 18:01:13

标签: c++ bmp

注意:由于建议使用位图的注释,我将标题从.png更改为.bmp。

我正在制作这个简单的基于2d网格的CMD游戏,我想制作.png级别并将它们转换为我游戏的关卡数据。

所以基本上我想知道的是,我如何遍历bmp的像素来解析它到某些级别的数据。

这是我用.txt

做的
int x = 0;
int y = 0;
std::ifstream file(filename);
std::string str;
while (std::getline(file, str))
{
    x++;
    for (char& c : str) {
        y++;
        updateTile(coordinate(x), coordinate(y), c);
    }
}

我找不到任何有用的帖子所以我发布了这个新帖子,希望我没有违反任何规则

1 个答案:

答案 0 :(得分:1)

我不知道您是否仍想阅读png文件,但如果您这样做,请检查此解码器: http://lodev.org/lodepng/

它将一个png文件加载到一个向量中,其中4个字符(字节)给出一个像素(RGBA格式)。因此,通过一次加载4个字符,您将获得一个像素。

我之前没有使用它,但它看起来很容易使用。