gpt4 book ai didi

ios - 将 UIimageView 的数量合并为一个

转载 作者:行者123 更新时间:2023-11-28 22:24:32 24 4
gpt4 key购买 nike

我有几个 UIImageViews 在 eace 之上,假设我想将它们全部保存为一个图像。有没有办法“截屏”/将所有 UIImageView 连接到一个?

那么我可以使用:

UIGraphicsBeginImageContext(mv.frame.size);
[[mv layer] renderInContext:UIGraphicsGetCurrentContext()];
UIImage *screenshot = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

谢谢。

最佳答案

您可以通过截屏所有 UIImageView 的 super View 来实现。我为此编写了一个方法:(确保您将 UIImageViews 添加到同一 View 。例如:

[self.view addSubview: image1];
[self.view addSubview: image2];
[self.view addSubview: image3];
[self.view addSubview: image4];

然后制作关于self.view的截图)

+ (UIImage*) screenShotTheArea:(CGRect)area inView:(UIView*)view{

if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)])
UIGraphicsBeginImageContextWithOptions(CGSizeMake(area.size.width, area.size.height), NO, [UIScreen mainScreen].scale);
else
UIGraphicsBeginImageContext(view.bounds.size);

CGContextRef c = UIGraphicsGetCurrentContext();
CGContextTranslateCTM(c, -area.origin.x, -area.origin.y);
[view.layer renderInContext:c];
UIImage* thePrintScreen = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

return thePrintScreen;
}

关于ios - 将 UIimageView 的数量合并为一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19357565/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com