图像缩放、滚动视图、裁剪
Posted
技术标签:
【中文标题】图像缩放、滚动视图、裁剪【英文标题】:image zoom, scroll view, crop 【发布时间】:2012-06-26 10:17:39 【问题描述】:我只是通过将 imageView 放在 ScrollView 上来缩放图片。我想裁剪显示在 imageView 中的图像部分(缩放后)并保存为新图像。
谢谢
代码在这里
CGRect frame = CGRectMake(0,0,190,210);
scroll = [[UIScrollView alloc] initWithFrame:frame];
scroll.contentSize = CGSizeMake(240, 260);
scroll.showsHorizontalScrollIndicator = YES;
scroll.showsVerticalScrollIndicator = YES;
[scroll addSubview:imageView];
而滚动视图委托方法是
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
return self.imageView;
【问题讨论】:
见下面的链接。 ***.com/questions/1971542/… 【参考方案1】:-(void)touchesBegan:(NSSet*)touches withEvent:(UIEvent*)event
// get touch event
UITouch *touch = [[event allTouches] anyObject];
StartPoint = [touch locationInView:touch.view];
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
// get touch event
UITouch *touch = [[event allTouches] anyObject];
EndPoint = [touch locationInView:touch.view];
[self finishedTouchInside];
-(void)finishedTouchInside
CGFloat width=EndPoint.x-StartPoint.x;
CGFloat hieght=EndPoint.y-StartPoint.y;
CGRect myImageRect = CGRectMake(StartPoint.x, StartPoint.y, width, hieght);
Img_Screen= [[UIImageView alloc] initWithFrame:myImageRect];
CGImageRef imageRef = CGImageCreateWithImageInRect([imgView.image CGImage], myImageRect);
// or use the UIImage wherever you like
UIImage *newImage =[UIImage imageWithCGImage:imageRef];
CGImageRelease(imageRef);
这可能有助于您裁剪图像。
【讨论】:
以上是关于图像缩放、滚动视图、裁剪的主要内容,如果未能解决你的问题,请参考以下文章