6

私が使う

CATransform3D rotationAndPerspectiveTransform = CATransform3DIdentity;
rotationAndPerspectiveTransform.m34 = 1.0 / -500;

成功しましたが、「renderInContext:context」を使用してコンテキストからCGImageを取得しましたが、画像効果が変更されていないことがわかりました!

CALayer からこの効果画像を取得するにはどうすればよいですか?

4

1 に答える 1

2

私の元の返信は次のとおりです。私が投稿した時点では有効でしたが、AppleはUIGetScreenImageの使用を許可していません。iOS4のリリース後の私の知る限り、3D変換を使用してレイヤーをレンダリングする代替方法はありません。UIGetScreenImageを使用すると、アプリは拒否されます。



renderInContextに関するiPhone開発者向けドキュメントから:

さらに、3D変換を使用するレイヤーはレンダリングされず、backgroundFilters、filters、compositingFilter、またはマスク値を指定するレイヤーもレンダリングされません。

したがって、renderInContextは、3D変換が適用されているレイヤーをレンダリングするために使用する必要のある関数ではありません。

最善の方法は、 UIGetScreenImageを呼び出すことです。これにより、基本的にスクリーンショットが表示され、このスクリーンショットから画像を抽出できます。

于 2010-02-28T21:28:42.877 に答える