問題タブ [compositing]

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 に答える
1160 参照

java - BufferedImage の透明な領域が黒く書き出される

これが合成に関係していることは知っていますが、何を解決することはできません。コードの前のセクションでは、BufferedImage 内の特定のピクセル リストが透明な黒に設定されています。

次に、画像を書き出そうとします:

これで、画像を描画する前に「out」が明確であることがわかりました。私が得ていないのは、私の合成の問題です。透明になる代わりに、完全に黒くなります。

使用されるバッファリングされたイメージはすべて INT_ARGB です。

編集 - これは解決されました。画像ソースは ImageIO.read からのもので、返された BufferedImage はアルファをサポートしていませんでした。読み取り後の迅速な変換により、残りのコードがスムーズに実行されます。

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

svg - SVGマスクを使用してLumaマスクを作成するにはどうすればよいですか?

SVGでLuma-Mask(マット)を作りたいです。つまり、レイヤーを別のレイヤーのルミナンスチャンネル(RGBチャンネルから取得)にマスクしたいと思います。

これはどのように行うことができますか?

ありがとう

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

iphone - テキスト (キャプション) をリアルタイムで iOS のビデオに埋め込む方法は?

録画中にビデオにテキストを埋め込み、それをカメラ ロールに保存したいと考えています。この動画を他のデバイスで再生すると、このテキストが表示されます

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

java - リアルタイムでAndroidアプリのビデオの下部にテキストを埋め込む方法

ビデオの録画時にテキストを埋め込み、フォト ギャラリーに保存したいと考えています。この動画を他のデバイスで再生すると、このテキストが表示されます。

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

python - Python と xlib を使用して合成ウィンドウ マネージャーを作成する

私は趣味のプロジェクトとして単純なウィンドウ マネージャーを作成しており、それを実装するために python と xlib を選択しました。ウィンドウが左右にスライドするような派手な効果が欲しいのですが、これについて掘り下げることができたものから、これに取り組む最善の方法は、複合拡張機能を使用してウィンドウをオフスクリーンバッファーにレンダリングすることです。次に、それらのバッファーを操作して、好きなようにペイントします。

ただし、python-xlib のドキュメントがやや不足しているため、これを行う方法が見つかりませんでした。また、複合拡張で python-xlib を使用する例も見つかりませんでした。この情報はどこで見つけることができますか?また、合成で python-xlib を使用した人はいますか?

Pythonのコンポジットをサポートしているように見えるxcbにいつでも切り替えることができると思いますが、すべてを書き直して、Pythonのドキュメントがやや不足している別のAPIを見つけ出す必要はありません。

要約すると、私の質問は次のとおりです。

  • python-xlib でコンポジットを使用する方法はありますか?
  • このために xcb に切り替えた方がよいでしょうか?

追加の提案やアドバイスは大歓迎です。

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

ios - 複合CALayerでCALayerをマスクしますか?

マスクレイヤーを持つメインレイヤーがあります。

マスク レイヤーにはサブレイヤーもあります (結果として得られるさまざまなマスク形状内でレイアウトを変更するため)。

ただし、マスク サブレイヤーは実際のマスキングには影響しません。:(

マスクレイヤーでできることはありますか?アニメで使いたいので、性能も重視。


マスク レイヤーは、最初は完全な白で、次に小さい黒/グレースケール コンテンツを配置し、結果を確認したいだけです。グレースケール画像で CALayer をマスクできますか?


0 投票する
3 に答える
1424 参照

html - さまざまなレベルの不透明度で HTML キャンバスにストロークを描画する

問題

不透明ジッターを使用してブラシ ツールを作成しようとしています (Photoshop のように)。具体的な問題は次のとおりです。

さまざまなレベルの不透明度を使用して、HTML キャンバスにストロークを描画します。不透明度の高いピクセルは、不透明度の低いピクセルに置き換わる必要があります。それ以外の場合、ピクセルは変更されません。

その過程で透明性が失われてはなりません。ストロークは別のキャンバスに描画され、後で背景のキャンバスと結合されます。

結果は次のようになります。すべてのコードと対応する出力は、こちら(JSFiddle) にあります。

異なるレベルの不透明度で 1 つのパスをストロークすることはできないため (間違っている場合は訂正してください)、私のコードではセグメントごとに異なる不透明度のパスを作成します。

非解決策 1、「暗い」ブレンド モードの使用

暗いブレンド モードでは、不透明なピクセルを使用すると望ましい結果が得られますが、透明度では機能しないようです。透明性を失うことは取引の破綻です。

不透明なピクセルの場合:

ここに画像の説明を入力

透明ピクセルの場合:

ここに画像の説明を入力

非解決策 2、'destination-out' 合成演算子を使用する

新しいストローク セグメントを描画する前に、'destination-out' 合成演算子を使用して、下にあるピクセルからその不透明度を減算します。次に、「source-over」で新しいストローク セグメントを追加します。これはほとんど機能しますが、少しずれています。

ここに画像の説明を入力

解決策を探しています

各ピクセルを手動で操作することは避けたいです (過去に行ったことがあります)。明らかな何かが欠けていますか?この問題の簡単な解決策はありますか?

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

java - JPanels オーバーラップ中にちらつく

画面の上部に JPanels をランダムに表示するプログラムを作成しようとしています。これらの JPanel には、スマイリー フェイスの PNG BufferedImage が含まれています (PaintComponent をオーバーライドすることにより)。残念ながら、プログラムを実行し、パネルが重なり合う場所に描画されると、画像がちらつき始めます (合成ではなく、同時に表示しようとしているようです)。私はいくつかの調査を行い、問題を解決しようとしましたが、うまくいきませんでした。私のコードは以下です:

そして私の他のクラス: