1

2つのUIViewをViewController.viewに追加し、2つの正方形の画像を各view.layer.maskに適用して、正方形が2つにスライスされるようにし、その上にimageviewをaddSubviewします。マスクされたレイヤーをレンダリングしてフォトアルバムに保存するのに問題があります。保存した写真を写真番号のように見せたいです。1、しかしそれは常に写真番号のように見えます。2フォトアルバムに保存した後。マスクを適用した後、写真1のようにキャプチャするための解決策はありますか?</ p>

以下は、appleregarindrenderIngContextからの参照です。

重要このメソッドのOSXv10.5実装は、CoreAnimationコンポジションモデル全体をサポートしていません。QCCompositionLayer、CAOpenGLLayer、およびQTMovieLayerレイヤーはレンダリングされません。さらに、3D変換を使用するレイヤーはレンダリングされず、backgroundFilters、filters、compositingFilter、またはマスク値を指定するレイヤーもレンダリングされません。OS Xの将来のバージョンでは、これらのレイヤーとプロパティのレンダリングのサポートが追加される可能性があります。

ここに画像の説明を入力してください

4

2 に答える 2

1

私は以前に画像キャプチャ関数を作成しました。これは文字通りUIViewのプリントスクリーンを実行します。私のニーズにはうまく機能しないので、私はそれを使用しませんが、多分あなたはそれを使用することができます:

UIImage *img;   

UIGraphicsBeginImageContextWithOptions(UIViewYouWantToCapture.bounds.size, self.opaque, 0.0);
[[UIViewYouWantToCapture layer] renderInContext:UIGraphicsGetCurrentContext()];

img = UIGraphicsGetImageFromCurrentImageContext();

UIGraphicsEndImageContext();
于 2012-08-27T14:38:11.577 に答える
0

任意の画像にマスキングを適用すると、マスキングされた画像のアルファプロパティが1になり、残りの画像が0になり、ビューの画像をキャプチャしているときに、完全な画像が残ります(半分の画像を見ることができます) alpa = 0の半分の画像が原因ですが、まだ完全な画像があります)、完全なビューのスクリーンショットを取得します。

于 2012-08-29T05:11:15.953 に答える