Я использую следующий код для получения изображений со спрайта.И он отлично работает везде, кроме iPhone 4 (версия HD).
- (UIImage *)croppedImage:(CGRect)rect {
CGImageRef image = CGImageCreateWithImageInRect([self CGImage], rect);
UIImage *result = [UIImage imageWithCGImage:image];
CGImageRelease(image);
return result;
}
iPhone 4 автоматически загружает версию изображения HD (sprite@2x.png) вместо sprite.png.Исходное изображение имеет масштаб 2, но полученное изображение имеет масштаб 1 и неправильный размер.
Как справиться с этим поведением, принимая во внимание различные масштабы для iPhone 3G [s] и iPhone 4?
Я прочитал этот документ , но об использовании CGImageCreateWithImageInRect здесь ничего не сказано.