助けてください。
次のことについて、誰もうまく機能する答えを持っていないようです。
UIImagePickerController を使用して iPhone カメラから画像を取得します。画像を取得すると、オーバーレイが存在します。オーバーレイは、さまざまなジェスチャが添付された単なるサブクラス化された UIImageView です。
画像を取得するときに、デバイス画面上の正確な場所に画像にオーバーレイを追加するにはどうすればよいですか?
どんな助けでも大歓迎です、
ポンド
これはxcodeから離れて書いているので、微調整が必要かもしれません...
UIImage プロパティ、画像、オーバーレイを使用して UIView クラスを作成し、compositorView のように呼び出します。UIImagePickerController デリゲートの didFinishPickingMediaWithInfo: メソッドから、compositorView の画像プロパティを撮影したばかりの写真に設定し、オーバーレイ プロパティを使用している画像に設定します。次に、そのcompositorViewにcompositorViewを依頼してください。それはそれであるはずです...
(QuartzCore フレームワークが必要です)
@synthesize picture = _picture;
@synthesize overlay = _overlay;
-(void)drawRect:(CGRect)rect
{
CGFloat width = self.frame.size.width;
CGFloat height = self.frame.size.height;
CGRect frame = CGRectMake(0, 0, width, height);
[_picture drawInRect:frame];
[_overlay drawInRect:frame];
}
-(UIImage *)composedImage
{
CGSize pageSize = self.frame.size;
UIGraphicsBeginImageContextWithOptions(pageSize, NO, 2.0);
CGContextRef context = UIGraphicsGetCurrentContext();
[self.layer renderInContext:context];
UIImage *theImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return theImage;
}