2010-11-23 70 views
7

我想創建一個CGImageRef並繪製點。繪製成CGImageRef

使用什麼樣的上下文來創建一個空的CGImageRef並能夠繪製它。 CGContextRef或CGBitmapContextRef?

如果您可以提供代碼來創建一個空的CGImageRef圖像並繪製它,我將不勝感激。

回答

19
#define HIRESDEVICE (((int)rintf([[[UIScreen mainScreen] currentMode] size].width/[[UIScreen mainScreen] bounds].size.width)>1)) 


- (CGImageRef) blerg 
    { 
    CGFloat imageScale = (CGFloat)1.0; 
    CGFloat width = (CGFloat)180.0; 
    CGFloat height = (CGFloat)180.0; 

    if (HIRESDEVICE) 
     { 
     imageScale = (CGFloat)2.0; 
     } 

    // Create a bitmap graphics context of the given size 
    // 
    CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB(); 
    CGContextRef context = CGBitmapContextCreate(NULL, width * imageScale, height * imageScale, 8, 0, colorSpace, kCGImageAlphaPremultipliedLast); 


    // Draw ... 
    // 
    CGContextSetRGBFillColor(context, (CGFloat)0.0, (CGFloat)0.0, (CGFloat)0.0, (CGFloat)1.0); 
    // … 


    // Get your image 
    // 
    CGImageRef cgImage = CGBitmapContextCreateImage(context); 

    CGColorSpaceRelease(colorSpace); 
    CGContextRelease(context); 

    return cgImage; 
    } 
+0

感謝人幫了很多! – Cyprian 2010-11-24 08:35:43