从UIImage返回子图像

Don*_*son 15 iphone

我想从UIImage中获取一个子图像.我四处寻找类似的问题,但无济于事.

我知道我想要抓取的像素范围 - 如何从现有图像中返回此子图像?

don*_*kim 27

这应该有所帮助:http://iphonedevelopment.blogspot.com/2010/11/drawing-part-of-uiimage.html

此代码段正在创建一个类别,UIImage但代码应该很容易修改,以便在不作为类别的情况下工作.

做同样事情的一种较短的方法如下:

CGRect fromRect = CGRectMake(0, 0, 320, 480); // or whatever rectangle

CGImageRef drawImage = CGImageCreateWithImageInRect(image.CGImage, fromRect);
UIImage *newImage = [UIImage imageWithCGImage:drawImage];
CGImageRelease(drawImage);
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助!

  • @ohcibi为了使这个男女同校也适用于视网膜,你需要获得图像的比例因子(`image.scale`),将其应用于rect(将所有数值乘以该因子)并在创建最终的`UIImage时`,使用方法`imageWithCGImage:scale:orientation:`再次设置正确的比例因子. (4认同)