首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >图片来自UIView

图片来自UIView
EN

Stack Overflow用户
提问于 2010-08-17 00:53:13
回答 2查看 12.7K关注 0票数 16

有没有可能从UIView中创建一个图像?

谢谢,安德烈亚斯

EN

回答 2

Stack Overflow用户

发布于 2010-08-17 00:56:55

在您将框架添加到您的项目之后使用#import "QuartzCore/QuartzCore.h"。然后执行以下操作:

代码语言:javascript
复制
UIGraphicsBeginImageContext(yourView.frame.size);
[[yourView layer] renderInContext:UIGraphicsGetCurrentContext()];
UIImage *screenshot = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

// The result is *screenshot
票数 47
EN

Stack Overflow用户

发布于 2010-08-18 04:55:15

我已经使用了答案来进一步改进它。不幸的是,原始代码只生成了镜像图像。

下面是工作代码:

代码语言:javascript
复制
- (UIImage *) imageFromView:(UIView *)view {

    UIGraphicsBeginImageContext(view.frame.size);
    CGContextRef currentContext = UIGraphicsGetCurrentContext();
    CGContextTranslateCTM(currentContext, 0, view.size.height);
    // passing negative values to flip the image
    CGContextScaleCTM(currentContext, 1.0, -1.0);
    [[appDelegate.scatterPlotView layer] renderInContext:currentContext];
    UIImage *screenshot = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return screenshot;
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3495370

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档