2015-09-10 27 views
0

我基於下面的代碼此錯誤消息:斯威夫特 - 'UInt32的' 是無法轉換爲 'CGImage'

錯誤消息

/Users/MNurdin/Documents/iOS/XXXXX/HAHA.swift:534:38: 'UInt32' is not convertible to 'CGImage' 

我的代碼

let context : CGContextRef = CGBitmapContextCreate(nil, CGImageGetWidth(image.CGImage), CGImageGetHeight(image.CGImage), 
       CGImageGetBitsPerComponent(image.CGImage), 
       CGImageGetBytesPerRow(image.CGImage), 
       CGImageGetColorSpace(image.CGImage), 
       CGImageGetBitmapInfo(UInt32(image.CGImage)).rawValue)!; 

      CGContextConcatCTM(context, transform); 

請指點。謝謝。

回答

1

這是完全一樣的錯誤狀態,你不能一個數字轉換爲CGImage

我不知道爲什麼你想傳遞到CGImageGetBitmapInfo前一個CGImageUInt32轉換。直接通過CGImage即可。

CGImageGetBitmapInfo(image.CGImage); 
+2

我得到了 'UInt32的'不能轉換爲'CGBitmapInfo'。 –

2

由於錯誤狀態,你傳遞一個UInt32到一個希望將CGImage的功能。

CGImageGetBitmapInfo需要一個CGImage,因爲它的參數和返回CGBitmapInfo

您可能正在尋找:

UInt32(CGImageGetBitmapInfo(image.CGImage).rawValue) 
+0

請檢查我編輯的問題。 –

+0

@ Dato'MohammadNurdin:你仍然使用舊的方式,你是否改變了我的答案中提到的代碼? –

+0

我得到了這個錯誤信息,'UInt32'不能轉換爲'CGBitmapInfo' –

1

原始值返回UInt32的這樣試試:

CGImageGetBitmapInfo(image.CGImage).rawValue