現在表示しているViewのUIImageを作成する方法

プログラムから、画面を印刷したいときに、画面(ビュー)に表示している要素をまとめた形でUIImageを作る必要があります。
UIImageViewをcontentTypeにAspect Fitを使用していた関係で、自分でイメージを合成しようとしたときに、微妙なスケールがかかっていて、配置が変わってしまって困ってました。

手順1
CGContext用意
UIGraphicsBeginImageContextWithOptions(self.view.frame.size, false, 0.0)
手順2
Contextに描画
let context = UIGraphicsGetCurrentContext()
self.view.layer.render(in: context!)
手順3
ContextからImage取得
let retImage = UIGraphicsGetImageFromCurrentImageContext()
完成
UIImage取得完了!
MEMO
自分で位置合わせをする必要はなくて、ビュー自身に描画させれば良い話でした。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です