растянуть изображение до большего размера, не мешая пикселям в iPhone - PullRequest
0 голосов
/ 25 марта 2011

У меня есть представление, которое имеет 3 подпредставления, и все три подпредставления имеют uimageviews в uiscrolviews.Таким образом, изображения могут быть прокручены или увеличены.Изображения довольно большие.
Теперь общий размер изображения составляет 480X320, но я хочу сделать снимок экрана большего размера, например, 960X640.Но когда я пытаюсь это сделать, изображение растягивается, а пиксели мешают.

Есть ли способ растянуть изображение, которое имеет большой размер, но отображается в небольшом кадре?

Спасибо Pankaj

1 Ответ

1 голос
/ 07 апреля 2011

попробуйте этот код, он работает для меня.

- (UIImage *) resizeImage: (UIImage *) ширина изображения: (int) ширина высота: (int) высота {

CGImageRef imageRef = [image CGImage];
CGImageAlphaInfo alphaInfo = CGImageGetAlphaInfo(imageRef);

//if (alphaInfo == kCGImageAlphaNone)
    alphaInfo = kCGImageAlphaNoneSkipLast;

CGContextRef bitmap = CGBitmapContextCreate(NULL, width, height, CGImageGetBitsPerComponent(imageRef), 4 * width, CGImageGetColorSpace(imageRef), alphaInfo);
CGContextDrawImage(bitmap, CGRectMake(0, 0, width, height), imageRef);
CGImageRef ref = CGBitmapContextCreateImage(bitmap);
UIImage *result = [UIImage imageWithCGImage:ref];

CGContextRelease(bitmap);
CGImageRelease(ref);

return result;  

}

...