[英]How to convert .cpbitmap to readable image (png, jpg, jpeg…)
我喜歡將.cpbitmap文件轉換為可以在UIImageView中顯示的圖像格式。 在Objective-C中有沒有辦法做到這一點? 該應用程序將在越獄設備上運行,因此沒什么大不了的。
導入私有AppSupport.framework
並聲明此
CFArrayRef CPBitmapCreateImagesFromData(CFDataRef cpbitmap, void*, int, void*);
此函數將返回CGImageRef
對象的數組。 第一個參數是.cpbitmap
文件中的數據。 其他參數對我來說是未知的(其中一個可能是CFAllocatorRef
),因此我檢查了iOS如何調用此函數並使用了相同的值。 這是我做的
CPBitmapCreateImagesFromData([NSData dataWithContentsOfFile:@"LockBackground.cpbitmap"], NULL, 1, NULL);
我還想從Library / Springboard轉換HomeBackground.cpbitmap / LockBackground.cpbitmap。
以下為我工作:@creker:謝謝!
CFArrayRef CPBitmapCreateImagesFromData(CFDataRef cpbitmap, void*, int, void*);
CFArrayRef someArrayRef = CPBitmapCreateImagesFromData((__bridge CFDataRef)([NSData dataWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"LockBackground" ofType:@"cpbitmap"]]), NULL, 1, NULL);
NSArray *array = (__bridge NSArray*)someArrayRef;
UIImage *test = [UIImage imageWithCGImage:(__bridge CGImageRef)(array[0])];
我在最后一行之后添加了一個斷點,並使用XCode-> test-> Preview提取了圖像。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.