2011-04-20 47 views
1

嗨,我使用下面的代碼從上下文中獲取png格式的圖像並保存到特定路徑。從上下文獲取png圖像,但查看顏色變化

- (void)drawRect:(CGRect)rect { 
UIGraphicsBeginImageContext(self.bounds.size); 
CGContextBeginPath(UIGraphicsGetCurrentContext()); 
CGContextSetRGBFillColor(UIGraphicsGetCurrentContext(), 0.0, 1.0, 0.0, 0.2); 
for(id rects in textRects){ 

    CGRect rect = [rects CGRectValue]; 
CGContextFillRect(UIGraphicsGetCurrentContext(), rect); 
} 
CGContextStrokePath(UIGraphicsGetCurrentContext()); 
textImage = UIGraphicsGetImageFromCurrentImageContext(); 

UIGraphicsEndImageContext(); 
NSData *imageData=UIImagePNGRepresentation(textImage); 
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory , NSUserDomainMask, YES); 
NSString *documentsDirectory = [paths objectAtIndex:0]; 
NSString *path=[documentsDirectory stringByAppendingPathComponent:@"folder"]; 


[imageData writeToFile:[path stringByAppendingPathComponent:@"/subfolder/assets/0.png"] atomically:YES]; 

} 

我在這裏的問題是,從上面的代碼我認爲顏色是無法正常使用的顏色(即創建PNG之前)改變獲取圖像後,全黑的顏色可以在任何一個給我確切的原因是發生 在此先感謝。

+0

檢查是否'imageData'是寫入文件 – visakh7 2011-04-20 05:18:52

+0

是它出現在路徑 – ajay 2011-04-20 05:46:18

回答

1

查看4行代碼從上下文中獲取png圖像。

UIGraphicsBeginImageContext(myView.bounds.size); 
[myView.layer renderInContext:UIGraphicsGetCurrentContext()]; 
viewImage = UIGraphicsGetImageFromCurrentImageContext(); 
UIGraphicsEndImageContext(); 

感謝

+0

多數民衆贊成的方式是就在我爲目前面臨的問題.. – ajay 2011-04-20 05:48:55

+0

@AAAAAAAAA代碼的任何錯誤之前有效:檢查放CGContextSetRGBFillColor功能 – Jhaliya 2011-04-20 05:51:21

+0

評論沒什麼太大的區別,即使我評論說,行.. – ajay 2011-04-20 05:55:11