私は「ジグソーゲーム」を作成しています。そのために、単一の画像を次のように4X4マトリックスに分割しました。
これで、16の異なるimageViewができました。これらを組み合わせて、1つの画像にし、データベースに保存する必要があります。したがって、4x4のマトリックス画像を1つの画像に結合することは可能ですか。
私は「ジグソーゲーム」を作成しています。そのために、単一の画像を次のように4X4マトリックスに分割しました。
これで、16の異なるimageViewができました。これらを組み合わせて、1つの画像にし、データベースに保存する必要があります。したがって、4x4のマトリックス画像を1つの画像に結合することは可能ですか。
それはそうです、そしてそれはかなり簡単です。
UIGraphicsBeginImageContext(fullSize);
CGContextRef context = UIGraphicsGetCurrentContext();
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 4; j++) {
UIImage *image = [self imageAtRow:i column:j];
CGFloat imageSize = 40;
CGRect imageRect = CGRectMake (imageSize * i, imageSize * j, imageSize, imageSize);
CGContextDrawImage(context, imageRect, image.CGImage);
}
}
UIImage *result = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
result
作成したフルサイズの画像になります(4x4で40サイズの画像の場合は160x160)
編集
UIGraphicsBeginImageContextWithOptions(fullSize, NO, 0.0);
Retinaディスプレイをサポートするために使用