スポンサーリンク

【Swift】画面キャプチャを撮影する方法。〜 スクリーンショット 〜

Swift
スポンサーリンク

今回の記事はSwiftを利用して画面キャプチャを作成する方法について記載いたします。どのような場面で使用するかは正直わかりませんが画面キャプチャをとる際にご使用ください。

スポンサーリンク

カメラロールに保存する設定

カメラロールに保存する際には権限を付与する必要があります。そのため「info.plist」に権限を追加します。下記画像にしたがって権限を付与してください。追加する権限は「Privacy – Photo Library Additions Usage Description」です。

どこでもいいので「+」ボタンを押すことで権限を追加できます。

したの方に「Privacy – Photo Library Additions Usage Description」があるのでことらを選択し、valueの値を設定します。こだわりがなければカメラロール権限を与えます的な内容で特に問題はないと思います。こちら権限付与時のメッセージとなって出力されます。

画面キャプチャを行うためのSwiftコード

//コンテキスト開始
UIGraphicsBeginImageContextWithOptions(UIScreen.main.bounds.size, false, 0.0)
//viewを書き出す
self.view.drawHierarchy(in: self.view.bounds, afterScreenUpdates: true)
// imageにコンテキストの内容を書き出す
let image: UIImage = UIGraphicsGetImageFromCurrentImageContext()!
//コンテキストを閉じる
UIGraphicsEndImageContext()
// imageをカメラロールに保存
UIImageWriteToSavedPhotosAlbum(image, nil, nil, nil)

このようにまずはUIスクリーンの大きさを取得し、そのサイズにあったviewを取り出します。次にその取り出したview部分をUIImageに変換し、UIImageのインスタンスを作ります。あとは編集を終了して、カメラロールに保存するのみです。

カメラアプリなどに使用できますのでカメラ使用時に是非ご参照ください。

おすすめ情報ご紹介。

下記リンクよりU-NEXTの契約をすると31日間無料でU-NEXTの全動画約21万作品を見放題です。31日期間に解約すれば0円です。今だけのおすすめ情報なのでまだ登録していない人は是非!

スポンサーリンク
Swift
スポンサーリンク
シェアする
スポンサーリンク
SunnyDayTravel-Blog

コメント

タイトルとURLをコピーしました