zoukankan      html  css  js  c++  java
  • 图片数据随笔

    google下位图数据

    CImage:
    GetBits()返回的是图像数据buffer指针,如果是8位灰度图,每一字节(byte)是一个像素灰度级(调色板索引);如果是24位彩色,每三字节是一个像素RGB(存储顺序是BGR),另外注意位图数据从下到上存放,每行是按4字节的倍数分配空间。

    指针指向的是 一维数组(c++只有一维数组,多维的存储也是一维)
    定位需要你知道图像的信息才行:
    比如标准24位真彩色bmp文件,位图数据存储在一维数组lpBits[]中,图像大小height*width
    你要定位(x,y):
    1 此坐标应为以图像左下角为原点的坐标系,如果不是则需要坐标变换下(位图数据从下到上存储)
    确定每行的存储宽度(位图每行按4字节的倍数存储)
    if(width*3%4 == 0) savewidth = width*3;
    else savewidth = ((int)(width*3/4)+1)*4;
    3 lpBits[y*savewidth+x*3]即为(x,y)像素RGB数据,注意是按照BGR顺序存储的,因此
    b = lpBits[y*savewidth+x*3];
    g = lpBits[y*savewidth+x*3+1];
    r = lpBits[y*savewidth+x*3+2];

  • 相关阅读:
    020606-04-聊天布局-键盘处理
    020606-03-聊天布局-键盘处理
    02060601-聊天布局
    按钮背景图片拉伸
    源码-0205-02--聊天布局02
    源码-0205-02--聊天布局
    向量投影公式
    定比分点、中点公式
    重叠检测----凸边形
    aabb碰撞检测
  • 原文地址:https://www.cnblogs.com/wxl845235800/p/7615857.html
Copyright © 2011-2022 走看看