1

我有一个带有标签栏的简单应用程序。视图大小为 480 x 320。标签栏为 49 x 320。但是,当我尝试使用 UIgraphicsbeginimagecontext(self.view.frame.size) 截屏时,我得到的图像为 411 x 320.. 我的背景图像是 480 x 320 并在 ios 模拟器中正确显示。但是,当屏幕被捕获时,背景图像会被 69 个高度像素切割。任何人都知道:1)我得到 411 时 20 个丢失像素的去向(480-49)= 431 2)为什么我的背景图像在模拟器中正确显示但在截屏时被裁剪.. 非常感谢

4

2 回答 2

0

尝试使用self.view.bounds上下文大小。

另外,您是否在正确初始化视图之前截取屏幕截图?如果是,这可能会导致尺寸不正确。

于 2012-11-08T14:04:10.200 回答
0

缺少的 20 个像素是顶部状态栏的大小。如果您在顶部显示状态栏,实际上您的视图大小高度为 460 像素。当您使用 UIgraphicsbeginimagecontext(self.view.frame.size) 截屏时,您的尺寸参数是 320x460,而不是您预期的 320x480,从而导致“裁剪”图像。(对不起我的英语......)

于 2013-05-11T04:44:48.810 回答