gpt4 book ai didi

iphone - 转换后的屏幕快照

转载 作者:行者123 更新时间:2023-12-03 19:44:25 24 4
gpt4 key购买 nike

我正在尝试为具有 2 - 3 个 View 的 ipad 屏幕拍摄快照。我能做到。

现在我的问题是,当我处于横向模式时,我只需使用

变换旋转一个 View
CGAffineTransform transform;
transform = CGAffineTransformMakeRotation(M_PI/2);
imgPlayBoard.transform = transform;

现在,当我拍摄快照时, ImageView 中的图像将显示为纵向。发生了什么事我无法得到它。我正在使用以下功能来拍摄快照。

-(UIImage *)saveImage{

UIGraphicsBeginImageContext(imgPlayBoard.frame.size);
[imgPlayBoard.layer renderInContext:UIGraphicsGetCurrentContext()];
[imagesView.layer renderInContext:UIGraphicsGetCurrentContext()];
[drawBoard.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage * resultingImage = UIGraphicsGetImageFromCurrentImageContext();
UIImageWriteToSavedPhotosAlbum(resultingImage, nil, nil, nil);
UIGraphicsEndImageContext();
return resultingImage;
}

这就是我得到的图像。快照中图像的大小相同,但全部显示为白色。

最佳答案

好的..我自己找到了解决方案。一切都工作正常。但是由于我正在转换 ImageView ,然后将其渲染到上下文,因此它会获取 ImageView 的原始图像并丢弃转换。所以我所做的是图像中我想要的所有三个 View ,我将它们添加到 UIView 中,然后拍摄该 uiview 的快照。这解决了我的问题。 :)所以现在我的函数如下所示

-(UIImage *)saveImage{
UIGraphicsBeginImageContext(imgPlayBoard.frame.size);
[containerView.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage * resultingImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return resultingImage;
}

关于iphone - 转换后的屏幕快照,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8381788/

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