Я пытаюсь изменить размер CGImageRef, чтобы я мог нарисовать его на экране с нужным мне размером.Итак, у меня есть этот код:
CGColorSpaceRef colorspace = CGImageGetColorSpace(originalImage);
CGContextRef context = CGBitmapContextCreate(NULL,
CGImageGetWidth(originalImage),
CGImageGetHeight(originalImage),
CGImageGetBitsPerComponent(originalImage),
CGImageGetBytesPerRow(originalImage),
colorspace,
CGImageGetAlphaInfo(originalImage));
if(context == NULL)
return nil;
CGRect clippedRect = CGRectMake(CGContextGetClipBoundingBox(context).origin.x,
CGContextGetClipBoundingBox(context).origin.y,
toWidth,
toHeight);
CGContextClipToRect(context, clippedRect);
// draw image to context
CGContextDrawImage(context, clippedRect, originalImage);
// extract resulting image from context
CGImageRef imgRef = CGBitmapContextCreateImage(context);
Таким образом, этот код позволяет мне по-видимому нарисовать изображение до желаемого размера, и это хорошо.Проблема в том, что фактическое изображение, которое я получаю, когда-то изменял размер, даже если оно выглядит измененным на экране, оно фактически не изменяется.Когда я делаю:
CGImageGetWidth (imgRef);
На самом деле он возвращает оригинальную ширину изображения, а не ширину, которую я вижу на экране.
Так как я могуна самом деле создать изображение, которое на самом деле изменен размер и не только нарисован нужный размер, который я хочу ??
Спасибо