9
我在UIScrollView中有一個圖像,可以滾動和縮放。如何從UIView/UIScrollView創建圖像
當用戶按下一個按鈕時,我希望代碼創建一個圖像,從UIScrollView的任何部分是在我用CGRect指定的區域內。
我已經看到了代碼來裁剪UIImages,但我不能適應它做一個視圖相同,因爲它使用CGContextDrawImage。
有什麼想法?
乾杯, 安德烈
我在UIScrollView中有一個圖像,可以滾動和縮放。如何從UIView/UIScrollView創建圖像
當用戶按下一個按鈕時,我希望代碼創建一個圖像,從UIScrollView的任何部分是在我用CGRect指定的區域內。
我已經看到了代碼來裁剪UIImages,但我不能適應它做一個視圖相同,因爲它使用CGContextDrawImage。
有什麼想法?
乾杯, 安德烈
我已經成功地得到它。
這裏是我的解決方案的基礎上,從網上一些不同的:
- (UIImage *)imageByCropping:(UIScrollView *)imageToCrop toRect:(CGRect)rect
{
CGSize pageSize = rect.size;
UIGraphicsBeginImageContext(pageSize);
CGContextRef resizedContext = UIGraphicsGetCurrentContext();
CGContextTranslateCTM(resizedContext, -imageToCrop.contentOffset.x, -imageToCrop.contentOffset.y);
[imageToCrop.layer renderInContext:resizedContext];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return image;
}
您使用撥打:
CGRect clippedRect = CGRectMake(0, 0, 320, 300);
picture.image = [self imageByCropping:myScrollView toRect:clippedRect];
這是有幫助的,謝謝。 該方法中的一個小錯誤:雖然它引用了scrollView,但它應該引用imageToCrop來代替,以防調用方未將視圖命名爲「scrollView」。 – 2010-05-20 11:48:09
你完全正確:)我很高興你發現它有用,但。 乾杯 – Andre 2010-05-20 12:28:22
這非常有用!謝謝安德烈 – Ganesh 2010-10-29 07:35:28