私は自分のアプリにある小さなUIView
もののスクリーンショットを撮るこの機能を持っています、私の問題はこの画像に私の画像フォルダにある背景を追加したいということです。追加したい背景が現在のビューに表示されていません。画像を保存する前に、プログラムでスクリーンショット画像の後ろに貼り付けたいだけです。出来ますか?
(背景を含む新しいビューを作成したくないので、スクリーンショット画像を追加して、スクリーンショットをもう一度撮ります。多すぎます)
これが撮影された画像であるとしましょう:
______
/ \
/ \
\ /
\______/
そして、これは背景画像と画像を合わせたものです。
_________________
| |
| ______ |
| / \ |
| / \ |
| \ / |
| \______/ |
| |
|_________________|
これは私のコードです:
- (void)takeScreenShotAndSaveIt:(CGPoint)center
{
// IMPORTANT: using weak link on UIKit
if(UIGraphicsBeginImageContextWithOptions != NULL)
{
UIGraphicsBeginImageContextWithOptions(smallview.frame.size, NO, 0.0);
} else {
UIGraphicsBeginImageContext(smallview.frame.size);
}
[smallview.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
// Save image to iPhone documents directory
NSData * imgData = [[NSData alloc] initWithData:UIImagePNGRepresentation(viewImage)];
NSString * filename = [NSString stringWithFormat:@"MeasureScreenShot.png"];
NSArray * paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString * documentsDirectory = [paths objectAtIndex:0];
NSString * path = [documentsDirectory stringByAppendingPathComponent:filename];
[imgData writeToFile:path atomically:YES];
}