こんにちは。きんくまです。
画面をキャプチャしたいなと思って、調べてました。
>> iphone – Need to capture UIView into a UIImage, including all subviews – Stack Overflow
やり方はリンク先に書いてあるのを参照すれば大丈夫でした。
それで、コードを実際に書いていて、CALayerとCGLayerというのが存在しているのに気がつきました。
あれ、どっちも使ってる気がしてるけど、そういえば深く考えたことなかったな。
これ何が違うの???
CGLayerとCALayerの違い
で、調べたところずばり書いてありました。すばらしい!
>> cocoa – What’s the difference and compatibility of CGLayer and CALayer? – Stack Overflow
Joe Blowさんの回答をまとめますと、
—
はじめに CGLayerとCALayerは全く関係がない!
CGLayer
オフスクリーン用。画面に表示されることはない。
Appleが用意した画像演算のための高性能な機能。
演算用。
CALayer
オンスクリーン用。画面に表示されるためのもの。
表示用。
—
だそうです。補足すると、CGLayerはCore Graphicsに関係していて、CALayerはCore Animationに関係してます。
という目でリファレンスを見てみるとたしかに、CGLayerはLayerをスタンプみたいに画像に書き出したりするメソッドだったり、CALayerは表示目的のプロパティが並んでいることがわかります。
ということでした。
これ豆な
■ 自作iPhoneアプリ 好評発売中!
・フォルメモ - シンプルなフォルダつきメモ帳
・ジッピー電卓 - 消費税や割引もサクサク計算!
■ LINEスタンプ作りました!
毎日使える。とぼけたウサギ