iphone - iOS 为 UIImageView 获取图像的可见部分

标签 iphone objective-c ios

我正在尝试从 UIImageView 获取 UIImage 的可见部分。 UIImageView 占据整个屏幕。将捏合手势添加到 UIImageView。因此,用户可以平移/缩放 ImageView 。平移/缩放后,我只想裁剪 ImageView 的可见部分。我试过很多方法。但它返回了错误的图像部分。

提前致谢。

最佳答案

将 QuartzCore 框架包含到您的项目中并实现此方法以从 ImageView 中获取图像的可见部分: (注意:我的意思是你在你的项目中使用了 ARC)

#import <QuartzCore/QuartzCore.h>

- (UIImage*)imageFromImageView:(UIImageView*)imageView
{
    UIGraphicsBeginImageContext(imageView.frame.size);
    CGContextRef context = UIGraphicsGetCurrentContext();
    CGContextRotateCTM(context, 2*M_PI);

    [imageView.layer renderInContext:context];
    UIImage *image =  UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();

    return image;
}

关于iphone - iOS 为 UIImageView 获取图像的可见部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11120814/

相关文章:

iPhone SDK : Add UISlider and UISwitch in a table view only crash when touch slider?

ios - App ID 服务和约定

ios - 可选的@ViewBuilder 闭包

iphone - 如何在 mfmailcomposerview 中关闭键盘

iphone - UITableView tableHeaderView 缺少分隔符

ios - 如何正确设置 4s 的自动布局约束?

objective-c - 使用 MKTileOverlay 和 MKTileOverlayRenderer

c++ - dispatch_async 会影响以下代码的性能吗?

ios - UITableViewCell 神秘地改变高度

ios - 如何获取存储在 iOS 持久性 sqlite 数据库中的值?