天天看點

如何将一個UIView對象的内容儲存為UIImage

在iPhone程式開發中有可能我們會需要将一個View的内容轉換成圖檔。我自己對UIImage進行類擴充,寫了一個方法:

+ (UIImage*)imageFromView:(UIView*)view{

UIGraphicsBeginImageContextWithOptions(view.bounds.size, YES, view.layer.contentsScale);

[view.layer renderInContext:UIGraphicsGetCurrentContext()];

UIImage *image = UIGraphicsGetImageFromCurrentImageContext();

UIGraphicsEndImageContext();

return image;

}

注意:生成的圖檔的scale和view的scale一緻,這樣才可以保證圖檔的效果和view顯示的完全一緻,使用renderInContext方法可以讓subviews的内容也顯示的圖檔裡。