如何从4X4 imageView矩阵创建1个组合图像

时间:2013-01-28 12:26:16

标签: iphone ios uiimageview uiimage

我正在创建“拼图游戏”,因为我将单张图像划分为4X4矩阵,如

enter image description here

现在我有16个不同的imageViews,我需要将它们组合成一个单独的图像并存储在数据库中。因此可以将4x4矩阵图像组合成一个图像。

1 个答案:

答案 0 :(得分:2)

这是,而且相当容易。

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将是您创建的完整尺寸的图像(160x160,如果其4x4具有40个尺寸的图像)

修改

使用UIGraphicsBeginImageContextWithOptions(fullSize, NO, 0.0);支持视网膜显示