自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

iPhone開發(fā)應(yīng)用中如何使BMP讀取交顯示解決方法

移動(dòng)開發(fā) iOS
iPhone開發(fā)應(yīng)用中如何使BMP讀取交顯示解決方法是本文要介紹的內(nèi)容,主要是來(lái)學(xué)習(xí)在iphone開發(fā)中,BMP顯示的問(wèn)題,本文介紹了兩種解決方法。內(nèi)容不多,主要是基于代碼來(lái)實(shí)現(xiàn)內(nèi)容。

iPhone開發(fā)應(yīng)用中如何使BMP讀取交顯示解決方法是本文要介紹的內(nèi)容,主要是來(lái)學(xué)習(xí)在iphone開發(fā)中,BMP顯示的問(wèn)題,本文介紹了兩種解決方法。內(nèi)容不多,主要是基于代碼來(lái)實(shí)現(xiàn)內(nèi)容。雖然在iphone下很少使用bmp格式的圖片,但在此要介紹兩種方法,讓對(duì)bmp情有獨(dú)鐘的人,了確心中愿望。來(lái) 看本文具體詳解。

  1. #define BMP_SIZE   320*480*3    
  2. #define BMP_HEADER_LENGTH 54    
  3.      
  4. //方法一:    
  5. CGImageRef GetImageData()    
  6. {    
  7.     unsigned char* pData=NULL;    
  8.     int i = 0;    
  9.      
  10.     int bitsPerComponent = 8;    
  11.     int bitsPerPixel = 24;    
  12.     int bytesPerRow = 3 * SCREEN_METRIC_WIDTH;    
  13.     NSInteger myLCDDataLength =     
  14. SCREEN_METRIC_WIDTH * SCREEN_METRIC_HEIGHT * 2;    
  15.     CGColorSpaceRef colorSpaceRef = CGColorSpaceCreateDeviceRGB();    
  16.     CGBitmapInfo bmpInof = kCGBitmapByteOrderDefault;    
  17.     CGColorRenderingIntent renderingIntent = kCGRenderingIntentDefault;    
  18.     CGDataProviderRef provider = nil;    
  19.     void*pBuffer = malloc(BMP_SIZE + BMP_HEADER_LENGTH);      
  20.     for(pData = pBufferi = 0; i < SCREEN_METRIC_WIDTH * SCREEN_METRIC_HEIGHT; ++i)    
  21.     {    
  22.         *pData++ = 0xFF; //R    
  23.         *pData++ = 0x0; //G    
  24.         *pData++ = 0x0; //B    
  25.     }    
  26.      
  27.     provider = CGDataProviderCreateWithData(NULL, pBuffer, myLCDDataLength, NULL);    
  28.      
  29.     return CGImageCreate(SCREEN_METRIC_WIDTH,SCREEN_METRIC_HEIGHT,    
  30.                          bitsPerComponent,    
  31.                          bitsPerPixel,    
  32.                          bytesPerRow,    
  33.                          colorSpaceRef,    
  34.                          bmpInof,    
  35.                          provider,    
  36.                          NULL,     
  37.                          NO,    
  38.                          renderingIntent);        
  39. }    
  40.      
  41. void GUI_DrawBMP()    
  42. {    
  43.     CGImageRef m_cgImage = GetImageData();    
  44.      
  45.     pUIImage = [ [ UIImage alloc] initWithCGImage:m_cgImage];    
  46.      
  47.     [pUIImage drawAtPoint:CGPointMake(0.0f,0.0f)];    
  48.      
  49.     [pUIImage dealloc];    
  50.      
  51. }    
  52.      
  53. //方法二:    
  54. const char* const g_pszFilePath = "/example.bmp";    
  55. FILE * pFile = fopen(g_pszFilePath, "rb");    
  56. if(NULL != pFile)    
  57. {    
  58.     void*pBuffer = malloc(BMP_SIZE + BMP_HEADER_LENGTH);       
  59.     if (NULL != pBuffer)    
  60.     {    
  61.     fseek(pFile , 0, SEEK_SET);    
  62.     fread(pBuffer, 1, 54, pFile);    
  63.     fclose(pFile);    
  64.     memset(pBuffer + BMP_HEADER_LENGTH, BMP_SIZE);    
  65.     NSData* pNSData = [ [NSData alloc] initWithBytes:pBuffer     
  66. length: BMP_SIZE + BMP_HEADER_LENGTH];    
  67.     UIImage* pUIImage = [ [ UIImage alloc] initWithData:myNSData];    
  68.     [pUIImage drawAtPoint:CGPointMake(0.0f,0.0f)];    
  69.     [pNSData dealloc];     
  70.     free(pBuffer);    
  71.     }    
  72. }   

小結(jié):iPhone開發(fā)應(yīng)用中如何使BMP讀取交顯示解決方法的內(nèi)容介紹完了,希望通過(guò)本文的學(xué)習(xí)鞥對(duì)你有所幫助!

責(zé)任編輯:zhaolei 來(lái)源: 網(wǎng)絡(luò)轉(zhuǎn)載
相關(guān)推薦

2011-08-18 15:56:08

iPhone開發(fā)內(nèi)存

2011-08-17 10:09:25

iPhone開發(fā)UIWebViewTouch事件

2011-08-11 15:23:04

iPhoneNSBundleXcode

2011-07-07 15:45:45

iPhone SQLite 數(shù)據(jù)

2011-08-08 14:07:49

iPhone開發(fā) 字體

2010-06-17 10:32:13

開機(jī)顯示Grub

2009-08-13 10:40:15

C#讀取Excel

2011-08-19 10:35:19

iPhone應(yīng)用Three20

2011-08-17 15:10:21

iPhone開發(fā)Web視圖

2011-08-10 17:37:00

iPhoneASIHTTPRequ

2010-09-28 13:53:59

sql text字段

2009-07-07 09:09:48

結(jié)構(gòu)化綜合布線光系統(tǒng)

2022-04-02 20:27:30

ETS操作系統(tǒng)鴻蒙

2011-08-15 10:15:00

iPhone開發(fā)警告框

2011-08-22 14:12:48

iPhone開發(fā)NSTableView

2011-08-15 11:37:20

iPhone開發(fā)Mask

2011-08-09 17:12:30

iPhoneCFRunLoop

2011-08-12 14:33:06

iPhone緩存文件

2011-08-15 15:44:46

iPhone開發(fā)PDF

2011-08-18 16:24:44

iPhone開發(fā)圖片
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)