狠狠操网,91中文字幕在线观看,精品久久香蕉国产线看观看亚洲,亚洲haose在线观看

24位位圖格式解析

24位位圖格式解析

每一行的圖素數(shù)等于該結(jié)構(gòu)的'bcWidth字段。每一行從最左邊的圖素開始,直到圖像的右邊。分別對應(yīng)的B,G,R像素。每個像素占8位, 每列的寬度為bcWidth,必須為4的倍數(shù),不足的用零填充。

  下面是讀取二十四位位圖的關(guān)鍵代碼:

  代碼

  1 BITMAPFILEHEADER * pbmfh ;

  2 BITMAPINFO * pbmi ;

  3 BYTE * pBits ;

  4 pbmfh = DibLoadImage (szFileName) ;

  5 pbmi = (BITMAPINFO *) (pbmfh + 1) ;

  6 pBits = (BYTE *) pbmfh + pbmfh->bfOffBits ;

  7 for( i=0; i < 1024; i++)

  8 {

  9 pPrintBlock[i] = (char*)malloc(216);

  10 memset(pPrintBlock[i], 0, 216);

  11 }

  12

  13 for(h = 0; h < pbmi->bmiHeader.biHeight; h++)

  14 {

  15 for(w = 0; w < pbmi->bmiHeader.biWidth; w++)

  16 {

  17 b1 = *pBits; //B

  18 b2 = *(pBits+1); //G

  19 b3 = *(pBits+2); //R

  20 if( (int)b1 != 255 && (int)b2 != 255 && (int)b3 != 255)

  21 {

  22 index = w / 8;

  23 index = 1 << (w%8);

  24 index = pPrintBlock[h][w / 8] | ( 1 << (w%8) );

  25 pPrintBlock[h][w / 8] = pPrintBlock[h][w / 8] | ( 1 << (w%8) );

  26 }

  27 pBits += 3;

  28

  29 }

  30 if(pbmi->bmiHeader.biWidth *3 % 4 != 0)

  31 {

  32 pBits += ( 4 - pbmi->bmiHeader.biWidth*3 % 4);

  33 }

  34 }

版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請發(fā)送郵件至 yyfangchan@163.com (舉報時請帶上具體的網(wǎng)址) 舉報,一經(jīng)查實,本站將立刻刪除