問題タブ [bitmapdata]
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.
apache-flex - ビットマップ データの描画方法 - 存在しないピクセルを青色に置き換える
凸多角形(長方形ではない)の形をしたスプライトがあります。
を使用してスナップショットを作成すると:
私はこのような画像を取得します:
この画像では、画像の寸法 を示すために、緑色の境界線を自分で追加しました。
そのため、BitmapData クラスの draw メソッドを使用して凸多角形のスプライトのスナップショットを撮ると、内側に白い楕円が入っ
た赤い三角形
が表示され、残りの領域には白のピクセルが表示されました。
これらの外側の白いピクセルを青色のピクセル に置き換えたいと思います。
どうすればいいのですか?
apache-flex - Flex の BitmapData で透明色を作成する方法
私はこのようなコードを持っています:
生成されたPNGの白い色を透明にしたい。そうするための最良の方法は何ですか?
c# - 透明な画像のカラーグラデーションを置き換える
ビットマップのピクセルを特定の色から新しい特定の色に再色付けする小さな関数があります。
私がコードで抱えている問題は次のとおりです。
1)この関数は、しきい値があるため考慮すべきではない白いピクセルを再マッピングする結果を提供します...(この計算を間違って定義していない限り)
2)特定の色が指定されている場合、たとえばLimeGreenの奇妙な結果が関数から返された画像に表示されます(これは、加算または減算の場合のバイトタイプのオーバーフローによるものと思われます)
私が使用しているベースイメージはここにあります:
http://www.freeimagehosting.net/uploads/c8745a9de1.png
私が得た結果はここで見つけることができます:
freeimagehosting.net/uploads/fa48e5a0eb.png(remapColorとしてColor.Magenta、newColorとしてColor.Redで呼び出され、白いピクセルが影響を受け、グラデーションの終わりが正しく色付けされていないようです)
freeimagehosting.net/uploads/8faec6a569.png(remapColorとしてColor.Magenta、newColorとしてColor.Yellowで呼び出され、白いピクセルが影響を受け、グラデーションの終わりが正しく色付けされていないようです)
freeimagehosting.net/uploads/2efd4c04aa.png(remapColorとしてColor.Magenta、newColorとしてColor.Blueで呼び出され、グラデーションが正しく色付けされていないようです)
freeimagehosting.net/uploads/defdf04e16.png(remapColorとしてColor.Magenta、newColorとしてColor.Tealで呼び出され、白いピクセルが影響を受け、グラデーションが正しく計算されていないようです)
このコードのために私が持っている関数は以下の通りです:提案ごとに更新されました
何が...
私がやろうとしていることは可能ですか?
信頼できますか?
私のコードにバグがありますか?
グラデーションを使用してビットマップでこの「再マッピング可能な手法」を実現するためのより良い方法はありますか?
お時間をいただきありがとうございます。
flash - ビットマップデータを上書きする最も効率的な方法は何ですか
幅が 1 ピクセルで高さが異なる n 個の四角形で塗りつぶされた bitmapdata オブジェクトがあります。
ループを実行して古い長方形を削除し、別の長方形に置き換えたいと考えています。
ピクセルの各ビットマップ列を背景色にリセットしてから、必要な四角形を追加するようなことをする必要がありますか?
iphone - iPhoneでopenGLを使用してこのフェードアウト効果を行うには?
Apple の GLPaint Example をいじっています。
しかし、すでに描かれたものをフェードアウトする効果を作成する方法がわかりません。探している効果を示す例を Flash で作成しました: http://staging.rwichmann.com/openglexample/
Flash では にテクスチャを描画しており、すべてのフレームで、古い描画データをフェードアウトするBitmapData
ColorTransform を に追加しています。BitmapData
openGLにも同様の解決策があるに違いないと思います。renderBuffer
またはで何かが、frameBuffer
解決策が見つかりませんでした。
アイデア、ヒント、ヒントはありますか?
caching - Flex 3 の静的ビットマップの問題
ここで興味深い問題 - 私は Flex 3 を使用して小さなゲームを作成しています - 今、私は静的な ImageAccess クラスを持っています。これは最初にすべての画像をロードし、それらを静的な配列に格納して、後ですばやくアクセスできるようにします。
Clone() を呼び出さずに (効率の問題で) 物理的なビットマップデータをアドレス指定したため、偶然にもビットマップデータに直接書き込んでしまいました。
ここで奇妙な部分-Flexはある種の奇妙なキャッシュを使用し、ビットマップに加えられた新しい変更を保存します-何をしても(Flex Builderを再起動し、キャッシュを削除し、ブラウザを再起動します)、ビットマップデータはまだ追加でロードされます情報(画像にはそのデータがすべて含まれていませんが)。
助けてください:D
apache-flex - BMP画像のプレビューを生成する
サーバーに画像をアップロードするメディアアップローダーに取り組んでいます。ファイルのアップロードを開始する前に、画像の小さなサムネイルを表示したいと思います。
Loaderクラスを使用してユーザーが選択した画像を読み込み、Canvasを使用して画像を描画しました。
これは、jpgやpngなどの画像で正常に機能します。
ただし、bmpファイルローダークラスの場合は機能しません。
Flexにbmp画像をロードしてBitmapDataに変換する方法はありますか?
flash - 巨大なBitmapDataからAS3でPixels()をコピーする方法は?
AS3に非常に大きな画像をロードする必要があります(現在のサイズは8192x8192)。画面への描画またはそのサイズのBitmapDataの作成に関して、Flashによって課せられた制限のいずれにも適合しないことを認識しています。画像をロードして、その一部をあちこちでcopyPixels()できるようにします。
問題は、そのサイズの.jpgファイルを問題なくロードしているということです。サイズはローダーオブジェクトから正しく認識されます。私はそれをこのようにロードします:
次に、onCompleteメソッドで、これを実行しようとします。
しかし、通常は大きすぎるBitmapDataに対して予約されている#2015「InvalidBitmapData」エラーが表示されます。このエラーは、copyPixels()を実行しようとした場合にも発生します。これは、実行する必要があることです。
AS3でこれほど大きな画像からデータを取得できるようにするために使用できる回避策はありますか?
actionscript-3 - OSMF を使用したストリーミング (RTMP) .f4v で BitmapData.draw() を使用する
ビデオ オブジェクトで BitmapData.draw() を使用しようとしていますが、OSMF フレームワークを使用しています。
私のホスティング サービスは、rtmp ビデオにアクセスできるように次のように設定しています。
簡略化されたコードは次のとおりです。
ただし、次のエラー メッセージが表示されます。
apache-flex - Flex Bitmap または BitmapData の変更の通知を受け取りますか?
Flex では、ビットマップのデータが変更された (ピクセルが変更された、またはフィルターが追加された) たびに関数に通知されるように、ビットマップまたはビットマップデータ変数にどのようにフックしますか?
バインディングを設定しようとしましたが、うまくいきません。
'source' 属性を介して mx:Image をビットマップにバインドでき、ビットマップを変更すると表示される画像が常に更新されるため、それを行う方法が必要です。フレックスはどのように行うのですか?フレームごとにやみくもにビットマップを再描画しますか、それともスマートでビットマップが変更されたときにのみ再描画しますか? もしそうなら、ビットマップがいつ変更されたかをどのように知るのですか?