所以我有一个png格式的Spritesheet,并且已经计算出要显示的坐标。我正在尝试创建一种方法,该方法将在Spritesheet上传递位置信息时返回UIImage。我只是不确定如何使用CGContext以及坐标来返回UIImage。

我一直在寻找CGContextClipToRect,因为我认为这是做到这一点的方法,但是我似乎无法使其正常工作。

像这样

CGSize size = CGSizeMake(xSize, ySize);
UIGraphicsBeginImageContext(size);
//CGContextClipToRect(spriteSheet.size, imageRect);
[spriteSheet drawAtPoint:CGPointMake(xPos, yPos)];
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return newImage;


仅返回大小为Context的内容。如果可以的话,我需要能够在spritesheet周围“移动”此大小窗口。

任何帮助,将不胜感激。

谢谢,
麦克风

最佳答案

我认为您要使用的呼叫是CGImageCreateWithImageInRect

newImage = [UIImage imageWithCGImage:CGImageCreateWithImageInRect( [spriteSheet CGImage] , imageRect )];

10-07 21:08