我已经以编程方式创建了一个UIImageview,我正在显示一个包含图片网址的字符串中的图像
但我想展示原始图像的一个部分(中心的一个矩形)。我如何实现这一目标?
NSString * urlString = @"http://4.bp.blogspot.com/- rEqVgkdnuxE/TWd6Fm6EWtI/AAAAAAAABSc/cWCehI51v_Y/s1600/red_rose_flower3.jpg"
NSURL *url = [NSURL URLWithString:urlstring];
NSData *data = [NSData dataWithContentsOfURL:url];
UIImage *img = [[UIImage alloc] initWithData:data];
答案 0 :(得分:1)
试试这个尺寸:)
UIImageView *imageView = [UIImageView alloc] initWithImage:image];
[imageView setFrame:SIZEOFRECTANGLE];
[imageView setContentModeCenter];
答案 1 :(得分:0)
在 UIImageView 中移动大图像的非常简单的方法如下。
让我们以像素为单位显示尺寸(imgX,imgY)的图像,并且我们希望以磅为单位显示其中心(sizeX,sizeY)。 解决方案是:
UIImageView *iView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, sizeX, sizeY)];
iView.image = [UIImage imageNamed:@"NAME"];
CGRect contentFrame = CGRectMake(1/2-sizeX/imgX, 1/2-sizeY/imgY, 2*sizeX/imgX, 2*sizeY/imgY);
iView.layer.contentsRect = contentFrame;
此处 contentFrame 是相对于真实 UIImage 大小的规范化框架。 它将是没有放大倍率的原始图像视图。