問題タブ [cgbitmapcontext]
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.
xamarin.ios - 描画のための CGBitmapContext のオプション
CGBitmapContext または Quartz 2D のオプションはありますか? モノタッチで UIImage に描画するために使用したい。
ありがとうアレックス。
ios - CGBitmapContext の特定の色を置き換える
CGBitmapContext
すでに描画されている特定の色(RGB値)を置き換えるにはどうすればよいですか?
簡単な方法はありますか?
前もって感謝します。
c# - MonoTouch の CGBitmapContext が無効なハンドル例外をスローする
私は MonoTouch を初めて使用し、最近、コードを標準 C# から MonoTouch 準拠のコードに変換して、iPhone アプリケーション内で使用できるようにしました。コードを変換することはできましたが、ビットマップ コンテキストを返すために使用するこのメソッドで問題が発生しました。
スタック トレースは次のとおりです。
エラーは次の行で発生します。
私はMonoTouchに非常に慣れていないので、明らかに明らかな場合は我慢してみてください。しかし、何が起こっているのか誰か説明できますか?
ios - CGBitmapContextCreateメモリリリースの責任
これが私が作成する方法UIImage
です。piOutData
callocで割り当てました。最後に電話CGImageRelease
すると、自動的に解放されますpiOutData
か、それとも無料で手動で行う必要がありますか。
xamarin.ios - サンプル バッファからの画像の取得
カメラがオンになっているときにiPadでスクリーンショットをキャプチャしようとしています。私のコードは、Xamarin MonoTouch サンプルの AVCaptureFrames とまったく同じように見えます。
ただし、何らかの理由で、無効なハンドラー例外が発生し続けます。私は、次のような私のものに似た他の質問を見てきました。
MonoTouch の CGBitmapContext が無効なハンドル例外と「無効なハンドル」をスローする
しかし、彼らの解決策は私の同様の問題を解決していません。私の問題は、null の送信やメモリが大きすぎることが原因ではありません。null 値を送信しておらず、xcode 割り当てツールを使用してメモリ使用量を確認しましたが、メモリ使用量は爆発しません。最大で 400KB しか追加されません。
c# - CGBitmapContext のピクセル操作はビューのスーパービューに依存しますか?
CGBitmapContext を使用してピクセルを操作しているときに、本当に奇妙なことに遭遇しました。基本的に、PNG のアルファ値を変更しています。ImageView のスーパービューが画像を含む ImageView である場合を除いて、PNG ピクセルのアルファ値を正常にゼロにできる例があります。これはなぜですか? それがバグなのか、コンテキスト内の何かが正しく設定されていないのかはわかりません。
以下は例です。アルファ値を正常にゼロにしますが、スーパービューの UIImageView に画像を指定すると、正しく機能しません。ゼロのアルファを持つ必要があるピクセルがわずかに表示されます。しかし、スーパービューの UIImageView から画像を削除すると、アルファ値が正しくゼロになり、その背後にある白い背景が完全に表示されます。いくつかの異なる CGBlendMode を使用してみましたが、うまくいかないようです。
この奇妙なイベントを示すサンプル プロジェクトへのドロップボックス リンクを次に示します: https://www.dropbox.com/s/e93hzxl5ru5wnss/TestAlpha.zip
そして、ここにコードのコピー/貼り付けがあります:
更新 回避策を見つけました (ただし、そのパフォーマンスは私が行っていることに対してはかなり受け入れられません) 回避策は、上記のコードから結果の画像を取得し、それを NSData に変換してから、NSData を UIIMage に変換することです。 . 魔法のように画像は正しく見えます! この回避策; ただし、私の画像でこれを行うには文字通り 2 秒かかり、それは私のアプリには長すぎるため、私がやっていることには受け入れられません. 数百ミリ秒は楽しいでしょう. 、しかし、私には 2 秒は長すぎます.これがバグである場合は、解決されることを願っています!
回避策 (パフォーマンスの低下) のコードを次に示します。このコードを上記のコードの最後に追加するだけです (または、私の Dropbox プロジェクトをダウンロードし、このコードを最後に追加して実行します)。
前後の写真がこちら。Before は回避策なし、After は回避策あり。
グレーが完全に表示されないことに注意してください。アルファ値が完全にゼロになっていないかのように、明るい茶色で覆われています。
回避策を使用すると、灰色が完全かつ明確に表示され、その上に薄い茶色がまったく表示されないことに注意してください。私がした唯一のことは、画像をNSDataに変換してから、再びUIImageに戻すことでした! 非常に奇妙な...
calayer - renderInContext の使用方法: CGBitmapContextCreate と Retina で?
CGBitmapContext を手動で作成しました。
それにレイヤーを描画します:
ただし、Retina では、私のレイヤーは元のサイズの半分でしかレンダリングされません。
contentScaleFactor
でプロパティを設定してUIView
も何も変わりません。
これを行う正しい方法は何ですか?
ios - iOS で大きな画像を処理する
ユーザーがサイズを制限せずに写真を選択して編集できるようにしたい。
大きな写真のサムネイルを画面と同じサイズで編集用に作成し、編集が終了したら大きな写真を使用して、サムネイルに対して行ったのと同じ編集を行うという考えです。
UIGraphicsBeginImageContext
サムネイル画像の作成に使用すると、メモリの問題が発生します。
ハードウェアの制限により、大きな画像全体を直接編集するのは難しいことを知っているので、大きな画像をメモリの問題なしで 2048*2048 未満にダウンサンプリングする方法があるかどうか知りたいですか?
Androidプラットフォームで写真をダウンサンプリングできるオプションをBitmapFactory
持つクラスがあることがわかりました。inSampleSize
iOSでこれを行うにはどうすればよいですか?
avplayer - ムービーから CGBitmapContext へのフレームの描画
ビデオ/ムービーのフレームを、任意の CGAffineTransform を使用して CGBitmapContext にレンダリングする必要があるアプリがあります。少なくとも 20fps のような、まともなフレーム レートが必要です。
AVURLAsset と [AVAssetImageGenerator copyCGImageAtTime:] を使用してみましたが、このメソッドのドキュメントに明確に記載されているように、非常に遅く、5 fps に落ちることもあります。
これを行うためのより良い方法は何ですか? AVPlayerLayer を使用して AVPlayer をセットアップし、変換で [CGLayer renderInContext:] を使用できると考えています。これは機能しますか?それとも、AVPlayerLayer が画面に表示されていないことに気付いたときに、AVPlayerLayer が実行されないのでしょうか?
他に提案する方法はありますか?