QT中位图bitmap与VC的区别

Bitmap即每位代表一个像素的图片,VC和QT对bitmap的理解不一样,主要是大小端的理解不一样。

 

QBitmap::fromData(QSize(cx, cy), mask, QImage::Format_Mono);
注意最后一个参数: Format_Mono是大端,Format_MonoLSB是小端。

对于bitmap来说, 作为mask时, 1是显示,0是透明。 作为pixmap时,1是黑色,0是白色。

对于image来说,1是白色,2是黑色。

QT对Bitmap的理解和VC是反的。例如,对于01 00这16个点,VC是大端(高位在前)的理解:
0000 0001 0000 0000
而QT的理解是小端(低位在前)
1000 0000 0000 0000

所以,对于
00000090h: 00 00 00 00 00 00 00 00 01 DC 00 00 00 20 00 00 ; .........?.. ..
000000a0h: 00 20 00 00 00 20 00 00 00 20 00 00 00 20 00 00 ; . ... ... ... ..
000000b0h: 00 20 00 00 00 20 00 00 00 20 00 00 00 20 00 00 ; . ... ... ... ..
000000c0h: 00 20 00 00 00 20 00 00 00 20 00 00 00 20 00 00 ; . ... ... ... ..
000000d0h: 00 20 00 00 01 DC 00 00 00 00 00 00 00 00 00 00 ; . ...?.........
000000e0h: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ; ................
000000f0h: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ; ................
00000100h: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ; ................

VC的理解是
                               
                               
       ... ...                 
          .                    
          .                    
          .                    
          .                    
          .                    
          .                    
          .                    
          .                    
          .                    
          .                    
          .                    
          .                    
          .                    
          .                    
       ... ...                 
                               
                              
QT的理解是, 觉得QT的做法没有道理
                               
.         ... ..               
             .                 
             .                 
             .                 
             .                 
             .                 
             .                 
             .                 
             .                 
             .                 
             .                 
             .                 
             .                 
             .                 
             .                 
.         ... ..               
                               

 

 

你可能感兴趣的:(QT中位图bitmap与VC的区别)