問題タブ [cgimageref]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
522 参照

iphone - 生成されたスクリーン ショットを表示する UIImage が UIImageView に表示されない (デバイスのみ)

OpenGL バッファ (現在ビューに表示されているもの) をデバイスのフォト ライブラリに保存しようとしています。以下のコード スニペットは、シミュレーターで正常に動作します。しかし、実際のデバイスではクラッシュしています。画面からキャプチャされた UIImage を作成する方法に問題がある可能性があると思います。

  • この操作は、IBAction イベント ハンドル メソッドを介して開始されます。
  • 画像を保存するために使用する関数は UIImageWriteToSavedPhotosAlbum です (最近、これを ALAssetsLibrary の writeImageToSavedPhotosAlbum に変更しました)。
  • アプリが写真ライブラリへのアクセスを承認されていることを確認しました。
  • また、CGImageRed がグローバルに定義されている (ファイルの先頭で定義されている) ことと、UIImage が (非アトミック、保持) プロパティであることも確認しました。

誰かがこの問題を解決するのを手伝ってくれますか? glReadPixels データから生成された有効な UIImage 参照が必要です。

以下は、関連するコード スニペットです (フォト ライブラリに保存するための呼び出し)。

* 更新 * 問題を絞り込むことができたと思います。コード行をコメントアウトした後、(デバイス上で)アプリを実行して、物事を絞り込む試行錯誤を始めました。(glReadPixels を使用して) 画面バッファーを取得し、CGImageRef を作成するTakeImageBufferSnapshot関数に問題があるようです。ここで、これから UIImage を作成しようとすると ([UIImage imageWithCGImage:] メソッドを使用して)、これが原因でアプリがクラッシュするようです。この行をコメントアウトすると、問題はないようです (という事実以外は)私はUIImage参照を持っていません)。

写真ライブラリに保存できるように、基本的に有効な UIImage 参照が必要です (テスト画像を使用しても問題なく動作するようです)。

0 投票する
1 に答える
729 参照

iphone - y 軸上で CGImageRef を反転する方法

CoreAnimation のみを使用してスプライトをアニメーション化しようとしています。スプライトシートを反転する方法がわからないことを除けば、これまでのところ機能しています。

今、私は歩くアニメーションを持っていますが、スプライトが歩いている方向を向くようにします (後ろ向きに歩くのはばかげているように見えるため)。

スプライト シートに反転した画像を追加することもできると思いますが、さらに追加すると非常に大きくなる可能性があるため、むしろ避けたいと思います。

現在、スプライトが拡張CALayerされており、その内容をCGImageRefスプライト シートに設定しました。

それを裏返すために、私は試しました:

..そしてそれは機能していません。

アニメーションを含む他の解決策を見つけましたが、フリップをアニメーション化したくありません。私はそれがすぐに起こることを望んでいます。

これを行う簡単な方法はありますか?

全体をひっくり返す方法があれば、CALayerそれも知りたいです。=]

ありがとう!

0 投票する
0 に答える
2162 参照

ios - GLK テクスチャの作成に使用できる CIImage から CGImageRef への変換

CIFilter の結果/出力イメージである CIImage があります。次に、GLKTextureLoader を使用してその画像のテクスチャを作成します。私はそれを達成するために CGImageRef を必要とする次の関数を使用しています。

問題は、CIImage を GLKTextureLoader で使用できる CGImageRef に変換する最良の方法は何ですか?

次の方法を試しましたが、失敗しました。

fullscreenCIは CIFilter の outputImage です。

上記の方法では、次のエラーが発生します。

GLK テクスチャの作成中にエラーが発生しました: エラー ドメイン=GLKTextureLoaderErrorDomain コード=12 「操作を完了できませんでした。(GLKTextureLoaderErrorDomain エラー 12.)」 UserInfo=0x1438a880 {GLKTextureLoaderErrorKey=画像のデコードに失敗しました}

色空間の問題が原因である可能性があることがわかり、次の方法を試しました。

上記の方法で問題なく動作するようになりました!しかし、UIImagePNGRepresentation を使用せずに CIImage を CGImageRef に変換するより良い方法があるかどうかを知りたいです。

0 投票する
0 に答える
721 参照

ios - iOS SDKを使用してpngファイルをgifファイルに変換しますか?

ライブラリから画像を取得し、gif ファイルに変換する iPhone アプリを作成しています。以下のリンクを使用して正常に作成されました

http://gist.github.com/mayoff/4969104

このコードを使用して、gif ファイルを作成できます。しかし、画質は変化しています。一部の画像は引き伸ばされています。この問題で誰か助けてください。

前もって感謝します。

0 投票する
1 に答える
245 参照

ios - いつ CGImageRef をリリースするのが適切ですか?

XCodeコードを分析すると、潜在的なメモリ リークが見つかります。を使ってARCいますが、ARC は C 型を扱えないことを知りました。それを使っCGImageRefて作成してプロパティにUIImage代入するために使っているので、いつリリースするのが適切ですか?それを使って新しいものを作成した後、すぐにリリースできますか? をリリースすると、インスタンスも無効になりますか?UIImageView.imageCGImageRefUIImageCGImageRefUIImage

0 投票する
1 に答える
455 参照

ios - CFRelease が原因で iPad アプリケーションがクラッシュする

4 つの画像をマージして 1 つの uiimage にしようとしています。しかし、CFRelease を実行しようとすると、クラッシュします。これを行わないと、メモリ リークが発生してクラッシュします。これはどのように解決できますか?

私のコードについては以下を参照してください。

そして、私は以下のエラーが発生しています。この問題を解決するにはどうすればよいですか? 私のプロジェクトはARCにあります。

* -[UIImage _cfTypeID]: 割り当て解除されたインスタンス 0x1e88dce0 に送信されたメッセージ