Ios 将视图渲染为图像

Ios 将视图渲染为图像,ios,swift,uiimageview,uiimage,Ios,Swift,Uiimageview,Uiimage,我正在使用相机拍照,当我按下某个按钮时,将调用createImage方法。在这里,我试图将一个名为containerView的视图渲染到相机在previewImageView中拍摄的图像中。然而,问题在于相机中的图像大小为1080x1920,而containerView的大小因设备而异。例如,在iphone 6上,它将是375x503。我如何才能确保这两个对象可以像下面的快速插图中那样一起渲染 在我的代码中,containerView在下角非常小 目前我的代码 func createImage(

我正在使用相机拍照,当我按下某个按钮时,将调用
createImage
方法。在这里,我试图将一个名为
containerView
的视图渲染到相机在
previewImageView
中拍摄的图像中。然而,问题在于相机中的图像大小为
1080x1920
,而
containerView
的大小因设备而异。例如,在iphone 6上,它将是
375x503
。我如何才能确保这两个对象可以像下面的快速插图中那样一起渲染

在我的代码中,
containerView
在下角非常小

目前我的代码

func createImage() -> UIImage {

    //Get the taken image
    let fullSizeImage = previewImageView.image

    let newOverLayHeight = fullSizeImage!.size.width / self.containerView!.frame.width * self.containerView!.frame.height

    print(newOverLayHeight)

    //Render containerView to image
    UIGraphicsBeginImageContext(CGSizeMake(fullSizeImage!.size.width, newOverLayHeight));
    self.containerView!.layer.renderInContext(UIGraphicsGetCurrentContext()!)
    let overlayImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();


    //Merge these two images

    let newSize = CGSizeMake(fullSizeImage!.size.width, fullSizeImage!.size.height)
    UIGraphicsBeginImageContext( newSize )

    fullSizeImage!.drawInRect(CGRectMake(0,0,newSize.width,newSize.height))

    //draw overlayImage on top of fullsizeImage

    overlayImage.drawInRect(CGRectMake(0,fullSizeImage!.size.height - newOverLayHeight, overlayImage!.size.width,overlayImage.size.height), blendMode:CGBlendMode.Normal, alpha:1.0)

    let newImage = UIGraphicsGetImageFromCurrentImageContext()

    return newImage
}
我想要什么