任何人都可以向我解释如何在 iPhone OS 中将图像(平等地和不平等地)分成多个部分。如果您提供示例代码,这对我非常有帮助。

最佳答案

我已经修改了一些我从 Bill DudneyCore Animation Book 中得到的代码来完成这个任务:

- (NSArray*)splitImageIntoRects:(CGImageRef)anImage{

    CGSize imageSize = CGSizeMake(CGImageGetWidth(anImage), CGImageGetHeight(anImage));

    NSMutableArray *splitLayers = [NSMutableArray array];

            kXSlices = 3;
            kYSlices = 3;

    for(int x = 0;x < kXSlices;x++) {
        for(int y = 0;y < kYSlices;y++) {
            CGRect frame = CGRectMake((imageSize.width / kXSlices) * x,
                                     (imageSize.height / kYSlices) * y,
                                     (imageSize.width / kXSlices),
                                     (imageSize.height / kYSlices));

            CALayer *layer = [CALayer layer];
            layer.frame = frame;
            CGImageRef subimage = CGImageCreateWithImageInRect(drawnImage, frame);
            layer.contents = (id)subimage;
            CFRelease(subimage);
            [splitLayers addObject:layer];
        }
    }
    return splitLayers;
}

注意:要获取 CGImageRef:
CGImageRef anImage = [myUIImage CGImage];

关于iphone - 如何将图像分成多个部分?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1007078/

10-10 21:06